diff options
author | Scott J. Goldman <scottjg@github.com> | 2012-11-28 04:37:11 +0400 |
---|---|---|
committer | Scott J. Goldman <scottjg@github.com> | 2012-11-29 06:54:57 +0400 |
commit | eddde61846d3e2bcd5bfbfec486940d378d61231 (patch) | |
tree | ba1e491497e3b4a6eef6d99c77296450ba5576ed /tests-clar/revwalk | |
parent | bff53e5405e686f78e1ae81a4521566e3c67b5df (diff) |
Add tests for ahead-behind count
Diffstat (limited to 'tests-clar/revwalk')
-rw-r--r-- | tests-clar/revwalk/mergebase.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests-clar/revwalk/mergebase.c b/tests-clar/revwalk/mergebase.c index 268574eb6..c70222f19 100644 --- a/tests-clar/revwalk/mergebase.c +++ b/tests-clar/revwalk/mergebase.c @@ -18,6 +18,7 @@ void test_revwalk_mergebase__cleanup(void) void test_revwalk_mergebase__single1(void) { git_oid result, one, two, expected; + int ahead, behind; cl_git_pass(git_oid_fromstr(&one, "c47800c7266a2be04c571c04d5a6614691ea99bd ")); cl_git_pass(git_oid_fromstr(&two, "9fd738e8f7967c078dceed8190330fc8648ee56a")); @@ -25,11 +26,20 @@ void test_revwalk_mergebase__single1(void) cl_git_pass(git_merge_base(&result, _repo, &one, &two)); cl_assert(git_oid_cmp(&result, &expected) == 0); + + cl_git_pass(git_count_ahead_behind(&ahead, &behind, _repo, &one, &two)); + cl_assert(ahead == 2); + cl_assert(behind == 1); + + cl_git_pass(git_count_ahead_behind(&ahead, &behind, _repo, &two, &one)); + cl_assert(ahead == 1); + cl_assert(behind == 2); } void test_revwalk_mergebase__single2(void) { git_oid result, one, two, expected; + int ahead, behind; cl_git_pass(git_oid_fromstr(&one, "763d71aadf09a7951596c9746c024e7eece7c7af")); cl_git_pass(git_oid_fromstr(&two, "a65fedf39aefe402d3bb6e24df4d4f5fe4547750")); @@ -37,11 +47,20 @@ void test_revwalk_mergebase__single2(void) cl_git_pass(git_merge_base(&result, _repo, &one, &two)); cl_assert(git_oid_cmp(&result, &expected) == 0); + + cl_git_pass(git_count_ahead_behind( &ahead, &behind, _repo, &one, &two)); + cl_assert(ahead == 4); + cl_assert(behind == 1); + + cl_git_pass(git_count_ahead_behind( &ahead, &behind, _repo, &two, &one)); + cl_assert(ahead == 1); + cl_assert(behind == 4); } void test_revwalk_mergebase__merged_branch(void) { git_oid result, one, two, expected; + int ahead, behind; cl_git_pass(git_oid_fromstr(&one, "a65fedf39aefe402d3bb6e24df4d4f5fe4547750")); cl_git_pass(git_oid_fromstr(&two, "9fd738e8f7967c078dceed8190330fc8648ee56a")); @@ -52,11 +71,20 @@ void test_revwalk_mergebase__merged_branch(void) cl_git_pass(git_merge_base(&result, _repo, &two, &one)); cl_assert(git_oid_cmp(&result, &expected) == 0); + + cl_git_pass(git_count_ahead_behind(&ahead, &behind, _repo, &one, &two)); + cl_assert(ahead == 0); + cl_assert(behind == 3); + + cl_git_pass(git_count_ahead_behind(&ahead, &behind, _repo, &two, &one)); + cl_assert(ahead == 3); + cl_assert(behind == 0); } void test_revwalk_mergebase__no_common_ancestor_returns_ENOTFOUND(void) { git_oid result, one, two; + int ahead, behind; int error; cl_git_pass(git_oid_fromstr(&one, "763d71aadf09a7951596c9746c024e7eece7c7af")); @@ -66,6 +94,11 @@ void test_revwalk_mergebase__no_common_ancestor_returns_ENOTFOUND(void) cl_git_fail(error); cl_assert_equal_i(GIT_ENOTFOUND, error); + + cl_git_fail(git_count_ahead_behind(&ahead, &behind, _repo, &one, &two)); + cl_git_fail(error); + + cl_assert_equal_i(GIT_ENOTFOUND, error); } void test_revwalk_mergebase__no_off_by_one_missing(void) |