Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/libgit2.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@microsoft.com>2014-08-24 03:19:34 +0400
committerEdward Thomson <ethomson@microsoft.com>2014-10-27 05:59:34 +0300
commit18b439b9beee050de0dbf2f4649609764a69fb3c (patch)
tree043352fecce9b94e3b96c8445a4b028c7b9cea8e /tests/rebase
parent5ae9d296e3313be59a969cb8eab250c7c8f7307d (diff)
git_rebase_next: provide info about the operation
Diffstat (limited to 'tests/rebase')
-rw-r--r--tests/rebase/merge.c51
1 files changed, 34 insertions, 17 deletions
diff --git a/tests/rebase/merge.c b/tests/rebase/merge.c
index fddab8397..a3bb711b2 100644
--- a/tests/rebase/merge.c
+++ b/tests/rebase/merge.c
@@ -26,10 +26,11 @@ void test_rebase_merge__next(void)
{
git_reference *branch_ref, *upstream_ref;
git_merge_head *branch_head, *upstream_head;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_status_list *status_list;
const git_status_entry *status_entry;
- git_oid file1_id;
+ git_oid pick_id, file1_id;
checkout_opts.checkout_strategy = GIT_CHECKOUT_SAFE;
@@ -41,8 +42,12 @@ void test_rebase_merge__next(void)
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
+ git_oid_fromstr(&pick_id, "da9c51a23d02d931a486f45ad18cda05cf5d2b94");
+
+ cl_assert_equal_i(GIT_REBASE_OPERATION_PICK, rebase_operation.type);
+ cl_assert_equal_oid(&pick_id, &rebase_operation.id);
cl_assert_equal_file("da9c51a23d02d931a486f45ad18cda05cf5d2b94\n", 41, "rebase/.git/rebase-merge/current");
cl_assert_equal_file("1\n", 2, "rebase/.git/rebase-merge/msgnum");
@@ -66,9 +71,11 @@ void test_rebase_merge__next_with_conflicts(void)
{
git_reference *branch_ref, *upstream_ref;
git_merge_head *branch_head, *upstream_head;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_status_list *status_list;
const git_status_entry *status_entry;
+ git_oid pick_id;
const char *expected_merge =
"ASPARAGUS SOUP.\n"
@@ -100,8 +107,12 @@ void test_rebase_merge__next_with_conflicts(void)
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
+
+ git_oid_fromstr(&pick_id, "33f915f9e4dbd9f4b24430e48731a59b45b15500");
+ cl_assert_equal_i(GIT_REBASE_OPERATION_PICK, rebase_operation.type);
+ cl_assert_equal_oid(&pick_id, &rebase_operation.id);
cl_assert_equal_file("33f915f9e4dbd9f4b24430e48731a59b45b15500\n", 41, "rebase/.git/rebase-merge/current");
cl_assert_equal_file("1\n", 2, "rebase/.git/rebase-merge/msgnum");
@@ -124,6 +135,7 @@ void test_rebase_merge__next_stops_with_iterover(void)
{
git_reference *branch_ref, *upstream_ref;
git_merge_head *branch_head, *upstream_head;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_oid commit_id;
int error;
@@ -138,27 +150,27 @@ void test_rebase_merge__next_stops_with_iterover(void)
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
- cl_git_fail(error = git_rebase_next(repo, &checkout_opts));
+ cl_git_fail(error = git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_assert_equal_i(GIT_ITEROVER, error);
cl_assert_equal_file("5\n", 2, "rebase/.git/rebase-merge/end");
@@ -174,6 +186,7 @@ void test_rebase_merge__commit(void)
{
git_reference *branch_ref, *upstream_ref;
git_merge_head *branch_head, *upstream_head;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_oid commit_id, tree_id, parent_id;
git_signature *author;
@@ -191,7 +204,7 @@ void test_rebase_merge__commit(void)
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
@@ -233,6 +246,7 @@ void test_rebase_merge__commit_updates_rewritten(void)
{
git_reference *branch_ref, *upstream_ref;
git_merge_head *branch_head, *upstream_head;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_oid commit_id;
@@ -246,11 +260,11 @@ void test_rebase_merge__commit_updates_rewritten(void)
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
@@ -269,6 +283,7 @@ void test_rebase_merge__commit_drops_already_applied(void)
{
git_reference *branch_ref, *upstream_ref;
git_merge_head *branch_head, *upstream_head;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_oid commit_id;
int error;
@@ -283,13 +298,13 @@ void test_rebase_merge__commit_drops_already_applied(void)
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_fail(error = git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
cl_assert_equal_i(GIT_EAPPLIED, error);
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
@@ -307,6 +322,7 @@ void test_rebase_merge__finish(void)
{
git_reference *branch_ref, *upstream_ref, *head_ref;
git_merge_head *branch_head, *upstream_head;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_oid commit_id;
git_reflog *reflog;
@@ -323,11 +339,11 @@ void test_rebase_merge__finish(void)
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, NULL));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));
- cl_git_fail(error = git_rebase_next(repo, &checkout_opts));
+ cl_git_fail(error = git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_assert_equal_i(GIT_ITEROVER, error);
cl_git_pass(git_rebase_finish(repo, signature, NULL));
@@ -367,6 +383,7 @@ static void test_copy_note(
git_reference *branch_ref, *upstream_ref;
git_merge_head *branch_head, *upstream_head;
git_commit *branch_commit;
+ git_rebase_operation rebase_operation;
git_checkout_options checkout_opts = GIT_CHECKOUT_OPTIONS_INIT;
git_oid note_id, commit_id;
git_note *note = NULL;
@@ -391,7 +408,7 @@ static void test_copy_note(
cl_git_pass(git_rebase(repo, branch_head, upstream_head, NULL, signature, opts));
- cl_git_pass(git_rebase_next(repo, &checkout_opts));
+ cl_git_pass(git_rebase_next(&rebase_operation, repo, &checkout_opts));
cl_git_pass(git_rebase_commit(&commit_id, repo, NULL, signature,
NULL, NULL));