]> git.ipfire.org Git - thirdparty/git.git/commitdiff
describe tests: improve test for --work-tree & --dirty
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Mon, 12 Apr 2021 11:21:43 +0000 (13:21 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 11 May 2021 03:48:09 +0000 (12:48 +0900)
Improve tests added in 9f67d2e8279 (Teach "git describe" --dirty
option, 2009-10-21) and 2ed5c8e174d (describe: setup working tree for
--dirty, 2019-02-03) so that they make sense in combination with each
other.

The "check_describe" being removed here was the earlier test, we then
later added these --work-tree tests which really just wanted to check
if we got the exact same output from "describe", but the test wasn't
structured to test for that.

Let's change it to do that, which both improves test coverage and
makes it more obvious what's going on here.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t6120-describe.sh

index 88fddc91424006e7acce4bc5ed21d725df9a4d66..a83ea15faaf5be976c0ef191fcd71c9c91c0f8a5 100755 (executable)
@@ -151,24 +151,24 @@ test_expect_success 'set-up dirty work tree' '
        echo >>file
 '
 
-check_describe "A-*[0-9a-f]-dirty" --dirty
-
 test_expect_success 'describe --dirty with --work-tree (dirty)' '
+       git describe --dirty >expected &&
        (
                cd "$TEST_DIRECTORY" &&
                git --git-dir "$TRASH_DIRECTORY/.git" --work-tree "$TRASH_DIRECTORY" describe --dirty >"$TRASH_DIRECTORY/out"
        ) &&
-       grep -E "^A-[1-9][0-9]?-g[0-9a-f]+-dirty$" out
+       grep -E "^A-[1-9][0-9]?-g[0-9a-f]+-dirty$" out &&
+       test_cmp expected out
 '
 
-check_describe "A-*[0-9a-f].mod" --dirty=.mod
-
 test_expect_success 'describe --dirty=.mod with --work-tree (dirty)' '
+       git describe --dirty=.mod >expected &&
        (
                cd "$TEST_DIRECTORY" &&
                git --git-dir "$TRASH_DIRECTORY/.git" --work-tree "$TRASH_DIRECTORY" describe --dirty=.mod >"$TRASH_DIRECTORY/out"
        ) &&
-       grep -E "^A-[1-9][0-9]?-g[0-9a-f]+.mod$" out
+       grep -E "^A-[1-9][0-9]?-g[0-9a-f]+.mod$" out &&
+       test_cmp expected out
 '
 
 test_expect_success 'describe --dirty HEAD' '