Commit | Line | Data |
---|---|---|
879ed753 JK |
1 | #!/bin/sh |
2 | ||
3 | test_description='basic sanity checks for git var' | |
4 | . ./test-lib.sh | |
5 | ||
6 | test_expect_success 'get GIT_AUTHOR_IDENT' ' | |
7 | test_tick && | |
8 | echo "$GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> $GIT_AUTHOR_DATE" >expect && | |
9 | git var GIT_AUTHOR_IDENT >actual && | |
10 | test_cmp expect actual | |
11 | ' | |
12 | ||
13 | test_expect_success 'get GIT_COMMITTER_IDENT' ' | |
14 | test_tick && | |
15 | echo "$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE" >expect && | |
16 | git var GIT_COMMITTER_IDENT >actual && | |
17 | test_cmp expect actual | |
18 | ' | |
19 | ||
20 | test_expect_success !AUTOIDENT 'requested identites are strict' ' | |
21 | ( | |
22 | sane_unset GIT_COMMITTER_NAME && | |
23 | sane_unset GIT_COMMITTER_EMAIL && | |
24 | test_must_fail git var GIT_COMMITTER_IDENT | |
25 | ) | |
26 | ' | |
27 | ||
28 | # For git var -l, we check only a representative variable; | |
29 | # testing the whole output would make our test too brittle with | |
30 | # respect to unrelated changes in the test suite's environment. | |
31 | test_expect_success 'git var -l lists variables' ' | |
32 | git var -l >actual && | |
33 | echo "$GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> $GIT_AUTHOR_DATE" >expect && | |
34 | sed -n s/GIT_AUTHOR_IDENT=//p <actual >actual.author && | |
35 | test_cmp expect actual.author | |
36 | ' | |
37 | ||
38 | test_expect_success 'git var -l lists config' ' | |
39 | git var -l >actual && | |
40 | echo false >expect && | |
41 | sed -n s/core\\.bare=//p <actual >actual.bare && | |
42 | test_cmp expect actual.bare | |
43 | ' | |
44 | ||
45 | test_expect_success 'listing and asking for variables are exclusive' ' | |
46 | test_must_fail git var -l GIT_COMMITTER_IDENT | |
47 | ' | |
48 | ||
49 | test_done |