mirror of
https://github.com/git/git.git
synced 2024-10-31 22:37:54 +01:00
5d9fc888b4
Allow adding a TEST_GIT_INDEX_VERSION variable to config.mak to set the index version with which the test suite should be run. If it isn't set, the default version given in the source code is used (currently version 3). To avoid breakages with index versions other than [23], also set the index version under which t2104 is run to 3. This test only tests functionality specific to version 2 and 3 of the index file and would fail if the test suite is run with any other version. Helped-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Thomas Gummerer <t.gummerer@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
59 lines
1.1 KiB
Bash
Executable file
59 lines
1.1 KiB
Bash
Executable file
#!/bin/sh
|
|
#
|
|
# Copyright (c) 2008 Nguyễn Thái Ngọc Duy
|
|
#
|
|
|
|
test_description='skip-worktree bit test'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_set_index_version 3
|
|
|
|
cat >expect.full <<EOF
|
|
H 1
|
|
H 2
|
|
H sub/1
|
|
H sub/2
|
|
EOF
|
|
|
|
cat >expect.skip <<EOF
|
|
S 1
|
|
H 2
|
|
S sub/1
|
|
H sub/2
|
|
EOF
|
|
|
|
test_expect_success 'setup' '
|
|
mkdir sub &&
|
|
touch ./1 ./2 sub/1 sub/2 &&
|
|
git add 1 2 sub/1 sub/2 &&
|
|
git ls-files -t | test_cmp expect.full -
|
|
'
|
|
|
|
test_expect_success 'index is at version 2' '
|
|
test "$(test-index-version < .git/index)" = 2
|
|
'
|
|
|
|
test_expect_success 'update-index --skip-worktree' '
|
|
git update-index --skip-worktree 1 sub/1 &&
|
|
git ls-files -t | test_cmp expect.skip -
|
|
'
|
|
|
|
test_expect_success 'index is at version 3 after having some skip-worktree entries' '
|
|
test "$(test-index-version < .git/index)" = 3
|
|
'
|
|
|
|
test_expect_success 'ls-files -t' '
|
|
git ls-files -t | test_cmp expect.skip -
|
|
'
|
|
|
|
test_expect_success 'update-index --no-skip-worktree' '
|
|
git update-index --no-skip-worktree 1 sub/1 &&
|
|
git ls-files -t | test_cmp expect.full -
|
|
'
|
|
|
|
test_expect_success 'index version is back to 2 when there is no skip-worktree entry' '
|
|
test "$(test-index-version < .git/index)" = 2
|
|
'
|
|
|
|
test_done
|