| #!/bin/sh |
| |
| test_description='git patch-id' |
| |
| . ./test-lib.sh |
| |
| test_expect_success 'setup' ' |
| test_commit initial foo a && |
| test_commit first foo b && |
| git checkout -b same HEAD^ && |
| test_commit same-msg foo b && |
| git checkout -b notsame HEAD^ && |
| test_commit notsame-msg foo c |
| ' |
| |
| test_expect_success 'patch-id output is well-formed' ' |
| git log -p -1 | git patch-id > output && |
| grep "^[a-f0-9]\{40\} $(git rev-parse HEAD)$" output |
| ' |
| |
| get_patch_id () { |
| git log -p -1 "$1" | git patch-id | |
| sed "s# .*##" > patch-id_"$1" |
| } |
| |
| test_expect_success 'patch-id detects equality' ' |
| get_patch_id master && |
| get_patch_id same && |
| test_cmp patch-id_master patch-id_same |
| ' |
| |
| test_expect_success 'patch-id detects inequality' ' |
| get_patch_id master && |
| get_patch_id notsame && |
| ! test_cmp patch-id_master patch-id_notsame |
| ' |
| |
| test_done |