From bdb80a852dc914bb15e2b2fcbc94578f3824e882 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Fri, 25 Sep 2026 11:25:30 +0200 Subject: [PATCH] add test directory album not exists --- src/albentohandy | 15 +++++++++++++++ tests/albentohandy.bats | 13 ++++++++++++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/albentohandy b/src/albentohandy index 2525810..09aa898 100755 --- a/src/albentohandy +++ b/src/albentohandy @@ -35,6 +35,20 @@ load_config() OUTPUT_PATH=${OUTPUT_PATH:-"work.$$"} } +make_symlinks_to_work() +{ + local albumlist="$1" + local alben=() + mapfile -t alben < <(cat "$albumlist") + + local album= + for album in "${alben[@]}"; do + [ -d "$MUSIC_PATH/$album" ] \ + || errlog "directory $MUSIC_PATH/$album does not exists" \ + || return $? + done +} + main() { local albumlist="albumlist" @@ -61,6 +75,7 @@ main() || return $? mkdir --parents "$OUTPUT_PATH" + make_symlinks_to_work "$albumlist" } [ "$TEST_MODE" == "ON" ] && return 0 diff --git a/tests/albentohandy.bats b/tests/albentohandy.bats index 71af4aa..8db3177 100755 --- a/tests/albentohandy.bats +++ b/tests/albentohandy.bats @@ -4,7 +4,7 @@ setup() { bats_load_library 'bats-support' bats_load_library 'bats-assert' mkdir --parents "build/tests" - touch "build/tests/albumlist" + echo "Alben/Artist1" > "build/tests/albumlist" export TEST_MODE="ON" export CONFIG_FILE="tests/test.conf" export LIB_PATH="src/lib" @@ -106,8 +106,19 @@ teardown() { } @test "success: create output path" { + make_symlinks_to_work() { + : + } + run main -i "build/tests/albumlist" assert_success [ -d "build/tests/output" ] +} + +@test "failed: directory build/tests/music/Alben/Artist1 does not exists" { + run main -i "build/tests/albumlist" + + assert_failure + assert_line --index 0 "❌ ERROR: directory build/tests/music/Alben/Artist1 does not exists" } \ No newline at end of file -- 2.47.3