зеркало из https://github.com/microsoft/git.git
test-reach: add rev-list tests
The rev-list command is critical to Git's functionality. Ensure it works in the three commit-graph environments constructed in t6600-test-reach.sh. Here are a few important types of rev-list operations: * Basic: git rev-list --topo-order HEAD * Range: git rev-list --topo-order compare..HEAD * Ancestry: git rev-list --topo-order --ancestry-path compare..HEAD * Symmetric Difference: git rev-list --topo-order compare...HEAD Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
4b47a9a85e
Коммит
d6b40712dc
|
@ -243,4 +243,88 @@ test_expect_success 'commit_contains:miss' '
|
||||||
test_three_modes commit_contains --tag
|
test_three_modes commit_contains --tag
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'rev-list: basic topo-order' '
|
||||||
|
git rev-parse \
|
||||||
|
commit-6-6 commit-5-6 commit-4-6 commit-3-6 commit-2-6 commit-1-6 \
|
||||||
|
commit-6-5 commit-5-5 commit-4-5 commit-3-5 commit-2-5 commit-1-5 \
|
||||||
|
commit-6-4 commit-5-4 commit-4-4 commit-3-4 commit-2-4 commit-1-4 \
|
||||||
|
commit-6-3 commit-5-3 commit-4-3 commit-3-3 commit-2-3 commit-1-3 \
|
||||||
|
commit-6-2 commit-5-2 commit-4-2 commit-3-2 commit-2-2 commit-1-2 \
|
||||||
|
commit-6-1 commit-5-1 commit-4-1 commit-3-1 commit-2-1 commit-1-1 \
|
||||||
|
>expect &&
|
||||||
|
run_three_modes git rev-list --topo-order commit-6-6
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'rev-list: first-parent topo-order' '
|
||||||
|
git rev-parse \
|
||||||
|
commit-6-6 \
|
||||||
|
commit-6-5 \
|
||||||
|
commit-6-4 \
|
||||||
|
commit-6-3 \
|
||||||
|
commit-6-2 \
|
||||||
|
commit-6-1 commit-5-1 commit-4-1 commit-3-1 commit-2-1 commit-1-1 \
|
||||||
|
>expect &&
|
||||||
|
run_three_modes git rev-list --first-parent --topo-order commit-6-6
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'rev-list: range topo-order' '
|
||||||
|
git rev-parse \
|
||||||
|
commit-6-6 commit-5-6 commit-4-6 commit-3-6 commit-2-6 commit-1-6 \
|
||||||
|
commit-6-5 commit-5-5 commit-4-5 commit-3-5 commit-2-5 commit-1-5 \
|
||||||
|
commit-6-4 commit-5-4 commit-4-4 commit-3-4 commit-2-4 commit-1-4 \
|
||||||
|
commit-6-3 commit-5-3 commit-4-3 \
|
||||||
|
commit-6-2 commit-5-2 commit-4-2 \
|
||||||
|
commit-6-1 commit-5-1 commit-4-1 \
|
||||||
|
>expect &&
|
||||||
|
run_three_modes git rev-list --topo-order commit-3-3..commit-6-6
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'rev-list: range topo-order' '
|
||||||
|
git rev-parse \
|
||||||
|
commit-6-6 commit-5-6 commit-4-6 \
|
||||||
|
commit-6-5 commit-5-5 commit-4-5 \
|
||||||
|
commit-6-4 commit-5-4 commit-4-4 \
|
||||||
|
commit-6-3 commit-5-3 commit-4-3 \
|
||||||
|
commit-6-2 commit-5-2 commit-4-2 \
|
||||||
|
commit-6-1 commit-5-1 commit-4-1 \
|
||||||
|
>expect &&
|
||||||
|
run_three_modes git rev-list --topo-order commit-3-8..commit-6-6
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'rev-list: first-parent range topo-order' '
|
||||||
|
git rev-parse \
|
||||||
|
commit-6-6 \
|
||||||
|
commit-6-5 \
|
||||||
|
commit-6-4 \
|
||||||
|
commit-6-3 \
|
||||||
|
commit-6-2 \
|
||||||
|
commit-6-1 commit-5-1 commit-4-1 \
|
||||||
|
>expect &&
|
||||||
|
run_three_modes git rev-list --first-parent --topo-order commit-3-8..commit-6-6
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'rev-list: ancestry-path topo-order' '
|
||||||
|
git rev-parse \
|
||||||
|
commit-6-6 commit-5-6 commit-4-6 commit-3-6 \
|
||||||
|
commit-6-5 commit-5-5 commit-4-5 commit-3-5 \
|
||||||
|
commit-6-4 commit-5-4 commit-4-4 commit-3-4 \
|
||||||
|
commit-6-3 commit-5-3 commit-4-3 \
|
||||||
|
>expect &&
|
||||||
|
run_three_modes git rev-list --topo-order --ancestry-path commit-3-3..commit-6-6
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'rev-list: symmetric difference topo-order' '
|
||||||
|
git rev-parse \
|
||||||
|
commit-6-6 commit-5-6 commit-4-6 \
|
||||||
|
commit-6-5 commit-5-5 commit-4-5 \
|
||||||
|
commit-6-4 commit-5-4 commit-4-4 \
|
||||||
|
commit-6-3 commit-5-3 commit-4-3 \
|
||||||
|
commit-6-2 commit-5-2 commit-4-2 \
|
||||||
|
commit-6-1 commit-5-1 commit-4-1 \
|
||||||
|
commit-3-8 commit-2-8 commit-1-8 \
|
||||||
|
commit-3-7 commit-2-7 commit-1-7 \
|
||||||
|
>expect &&
|
||||||
|
run_three_modes git rev-list --topo-order commit-3-8...commit-6-6
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Загрузка…
Ссылка в новой задаче