Files
image_processing/tests/helpers/common.bash
T
poprhythm f5ed6617c5 Add bats test suite for image processing scripts
Tests cover skip-already-processed logic, cleanup, idempotency, and
the config.sh single-source-of-truth invariant. bats-core, bats-assert,
and bats-support added as submodules under tests/libs/.
2026-07-03 19:49:04 -04:00

31 lines
821 B
Bash

REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
FIXTURES="$REPO_ROOT/tests/fixtures"
MOCKS="$REPO_ROOT/tests/mocks"
setup_mock_env() {
# Redirect ~/Applications/magick to our mock by overriding HOME
TEST_HOME="$(mktemp -d)"
mkdir -p "$TEST_HOME/Applications"
ln -s "$MOCKS/magick" "$TEST_HOME/Applications/magick"
export HOME="$TEST_HOME"
# Working dir for each test
TEST_WORKDIR="$(mktemp -d)"
}
teardown_mock_env() {
rm -rf "$TEST_HOME" "$TEST_WORKDIR"
}
make_zip() {
local zip_path="$1"; shift # destination zip path
local -a jpegs=("$@") # JPEG files to include
local tmpdir
tmpdir="$(mktemp -d)"
for jpg in "${jpegs[@]}"; do
cp "$jpg" "$tmpdir/"
done
(cd "$tmpdir" && zip -q "$zip_path" ./*.jpg)
rm -rf "$tmpdir"
}