Browse Source

test-reach: test in_merge_bases

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
main
Derrick Stolee 7 years ago committed by Junio C Hamano
parent
commit
5cd52de326
  1. 6
      t/helper/test-reach.c
  2. 18
      t/t6600-test-reach.sh

6
t/helper/test-reach.c

@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
int cmd__reach(int ac, const char **av)
{
struct object_id oid_A, oid_B;
struct commit *A, *B;
struct strbuf buf = STRBUF_INIT;
struct repository *r = the_repository;

@ -17,6 +18,7 @@ int cmd__reach(int ac, const char **av) @@ -17,6 +18,7 @@ int cmd__reach(int ac, const char **av)
if (ac < 2)
exit(1);

A = B = NULL;

while (strbuf_getline(&buf, stdin) != EOF) {
struct object_id oid;
@ -44,10 +46,12 @@ int cmd__reach(int ac, const char **av) @@ -44,10 +46,12 @@ int cmd__reach(int ac, const char **av)
switch (buf.buf[0]) {
case 'A':
oidcpy(&oid_A, &oid);
A = c;
break;

case 'B':
oidcpy(&oid_B, &oid);
B = c;
break;

default:
@ -58,6 +62,8 @@ int cmd__reach(int ac, const char **av) @@ -58,6 +62,8 @@ int cmd__reach(int ac, const char **av)

if (!strcmp(av[1], "ref_newer"))
printf("%s(A,B):%d\n", av[1], ref_newer(&oid_A, &oid_B));
else if (!strcmp(av[1], "in_merge_bases"))
printf("%s(A,B):%d\n", av[1], in_merge_bases(A, B));

exit(0);
}

18
t/t6600-test-reach.sh

@ -83,4 +83,22 @@ test_expect_success 'ref_newer:hit' ' @@ -83,4 +83,22 @@ test_expect_success 'ref_newer:hit' '
test_three_modes ref_newer
'

test_expect_success 'in_merge_bases:hit' '
cat >input <<-\EOF &&
A:commit-5-7
B:commit-8-8
EOF
echo "in_merge_bases(A,B):1" >expect &&
test_three_modes in_merge_bases
'

test_expect_success 'in_merge_bases:miss' '
cat >input <<-\EOF &&
A:commit-6-8
B:commit-5-9
EOF
echo "in_merge_bases(A,B):0" >expect &&
test_three_modes in_merge_bases
'

test_done

Loading…
Cancel
Save