Rewrite the tests to use a real diff

This commit is contained in:
Sven van Heugten 2026-03-05 19:50:57 +01:00
parent d3b3862040
commit ceac602325
No known key found for this signature in database
GPG key ID: D612F88666F4F660
3 changed files with 14 additions and 30 deletions

View file

@ -11,40 +11,21 @@ setup() {
}
@test "keeps hunk when replacement matches" {
run bash -c 'cat <<"EOF" | mechanicaldiff.py foo bar
diff --git a/file.txt b/file.txt
index 1111111..2222222 100644
--- a/file.txt
+++ b/file.txt
@@ -1,1 +1,1 @@
-foo
+bar
EOF'
printf "%s\n" "foo" >"$BATS_TEST_TMPDIR/old"
printf "%s\n" "bar" >"$BATS_TEST_TMPDIR/new"
diff_output="$(git diff --no-index "$BATS_TEST_TMPDIR/old" \
"$BATS_TEST_TMPDIR/new" || true)"
run mechanicaldiff.py foo bar <<<"$diff_output"
assert_success
expected="$(
cat <<'EOF'
diff --git a/file.txt b/file.txt
index 1111111..2222222 100644
--- a/file.txt
+++ b/file.txt
@@ -1,1 +1,1 @@
-foo
+bar
EOF
)"
assert_output "$expected"
assert_output "$diff_output"
}
@test "drops diff when replacement does not match" {
run bash -c 'cat <<"EOF" | mechanicaldiff.py foo bar
diff --git a/file.txt b/file.txt
index 1111111..2222222 100644
--- a/file.txt
+++ b/file.txt
@@ -1,1 +1,1 @@
-foo
+baz
EOF'
printf "%s\n" "foo" >"$BATS_TEST_TMPDIR/old"
printf "%s\n" "baz" >"$BATS_TEST_TMPDIR/new"
git diff --no-index "$BATS_TEST_TMPDIR/old" "$BATS_TEST_TMPDIR/new" \
>"$BATS_TEST_TMPDIR/diff" || true
run mechanicaldiff.py foo bar <"$BATS_TEST_TMPDIR/diff"
assert_success
assert_output ""
}