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" }