]>
Commit | Line | Data |
---|---|---|
d5db6c9e JH |
1 | #!/bin/sh |
2 | ||
5be60078 | 3 | test_description='git rev-list --max-count and --skip test' |
d5db6c9e | 4 | |
dd9cede9 | 5 | TEST_PASSES_SANITIZE_LEAK=true |
d5db6c9e JH |
6 | . ./test-lib.sh |
7 | ||
8 | test_expect_success 'setup' ' | |
74d2f569 ES |
9 | for n in 1 2 3 4 5 ; do |
10 | echo $n > a && | |
11 | git add a && | |
0c51d6b4 | 12 | git commit -m "$n" || return 1 |
d5db6c9e JH |
13 | done |
14 | ' | |
15 | ||
16 | test_expect_success 'no options' ' | |
5be60078 | 17 | test $(git rev-list HEAD | wc -l) = 5 |
d5db6c9e JH |
18 | ' |
19 | ||
20 | test_expect_success '--max-count' ' | |
5be60078 JH |
21 | test $(git rev-list HEAD --max-count=0 | wc -l) = 0 && |
22 | test $(git rev-list HEAD --max-count=3 | wc -l) = 3 && | |
23 | test $(git rev-list HEAD --max-count=5 | wc -l) = 5 && | |
24 | test $(git rev-list HEAD --max-count=10 | wc -l) = 5 | |
d5db6c9e JH |
25 | ' |
26 | ||
27 | test_expect_success '--max-count all forms' ' | |
5be60078 JH |
28 | test $(git rev-list HEAD --max-count=1 | wc -l) = 1 && |
29 | test $(git rev-list HEAD -1 | wc -l) = 1 && | |
30 | test $(git rev-list HEAD -n1 | wc -l) = 1 && | |
31 | test $(git rev-list HEAD -n 1 | wc -l) = 1 | |
d5db6c9e JH |
32 | ' |
33 | ||
34 | test_expect_success '--skip' ' | |
5be60078 JH |
35 | test $(git rev-list HEAD --skip=0 | wc -l) = 5 && |
36 | test $(git rev-list HEAD --skip=3 | wc -l) = 2 && | |
37 | test $(git rev-list HEAD --skip=5 | wc -l) = 0 && | |
38 | test $(git rev-list HEAD --skip=10 | wc -l) = 0 | |
d5db6c9e JH |
39 | ' |
40 | ||
41 | test_expect_success '--skip --max-count' ' | |
5be60078 JH |
42 | test $(git rev-list HEAD --skip=0 --max-count=0 | wc -l) = 0 && |
43 | test $(git rev-list HEAD --skip=0 --max-count=10 | wc -l) = 5 && | |
44 | test $(git rev-list HEAD --skip=3 --max-count=0 | wc -l) = 0 && | |
45 | test $(git rev-list HEAD --skip=3 --max-count=1 | wc -l) = 1 && | |
46 | test $(git rev-list HEAD --skip=3 --max-count=2 | wc -l) = 2 && | |
47 | test $(git rev-list HEAD --skip=3 --max-count=10 | wc -l) = 2 && | |
48 | test $(git rev-list HEAD --skip=5 --max-count=10 | wc -l) = 0 && | |
49 | test $(git rev-list HEAD --skip=10 --max-count=10 | wc -l) = 0 | |
d5db6c9e JH |
50 | ' |
51 | ||
52 | test_done |