]> git.ipfire.org Git - thirdparty/git.git/blob - t/t5200-update-server-info.sh
hashmap: use *_entry APIs for iteration
[thirdparty/git.git] / t / t5200-update-server-info.sh
1 #!/bin/sh
2
3 test_description='Test git update-server-info'
4
5 . ./test-lib.sh
6
7 test_expect_success 'setup' 'test_commit file'
8
9 test_expect_success 'create info/refs' '
10 git update-server-info &&
11 test_path_is_file .git/info/refs
12 '
13
14 test_expect_success 'modify and store mtime' '
15 test-tool chmtime =0 .git/info/refs &&
16 test-tool chmtime --get .git/info/refs >a
17 '
18
19 test_expect_success 'info/refs is not needlessly overwritten' '
20 git update-server-info &&
21 test-tool chmtime --get .git/info/refs >b &&
22 test_cmp a b
23 '
24
25 test_expect_success 'info/refs can be forced to update' '
26 git update-server-info -f &&
27 test-tool chmtime --get .git/info/refs >b &&
28 ! test_cmp a b
29 '
30
31 test_expect_success 'info/refs updates when changes are made' '
32 test-tool chmtime =0 .git/info/refs &&
33 test-tool chmtime --get .git/info/refs >b &&
34 test_cmp a b &&
35 git update-ref refs/heads/foo HEAD &&
36 git update-server-info &&
37 test-tool chmtime --get .git/info/refs >b &&
38 ! test_cmp a b
39 '
40
41 test_done