diff options
author | joshaber <joshaber@gmail.com> | 2015-07-22 11:33:18 -0400 |
---|---|---|
committer | joshaber <joshaber@gmail.com> | 2015-07-22 11:33:18 -0400 |
commit | 9830fbba05ef66325f929a09407abc45ab85847d (patch) | |
tree | dac363428f4705a632719e03b8b77f2d32ce2bb3 /tests/merge/files.c | |
parent | cf198fdf2a044d2e2f0675c2c6b1cd9cdbcf4fcf (diff) | |
parent | 42156d561723e92ffe597885719aa63abfe0795c (diff) | |
download | libgit2-fix-init-ordering.tar.gz |
Merge branch 'master' into fix-init-orderingfix-init-ordering
Diffstat (limited to 'tests/merge/files.c')
-rw-r--r-- | tests/merge/files.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/merge/files.c b/tests/merge/files.c index 7f461abff..2fd90d066 100644 --- a/tests/merge/files.c +++ b/tests/merge/files.c @@ -249,3 +249,42 @@ void test_merge_files__automerge_whitespace_change(void) git_merge_file_result_free(&result); } + +void test_merge_files__doesnt_add_newline(void) +{ + git_merge_file_input ancestor = GIT_MERGE_FILE_INPUT_INIT, + ours = GIT_MERGE_FILE_INPUT_INIT, + theirs = GIT_MERGE_FILE_INPUT_INIT; + git_merge_file_options opts = GIT_MERGE_FILE_OPTIONS_INIT; + git_merge_file_result result = {0}; + const char *expected = "Zero\n1\n2\n3\n4\n5 XXX\n6 YYY\n7\n8\n9\nTen"; + + ancestor.ptr = "0\n1\n2\n3\n4\n5 XXX\n6YYY\n7\n8\n9\n10"; + ancestor.size = strlen(ancestor.ptr); + ancestor.path = "testfile.txt"; + ancestor.mode = 0100755; + + ours.ptr = "Zero\n1\n2\n3\n4\n5 XXX\n6 YYY\n7\n8\n9\n10"; + ours.size = strlen(ours.ptr); + ours.path = "testfile.txt"; + ours.mode = 0100755; + + theirs.ptr = "0\n1\n2\n3\n4\n5 XXX\n6 YYY\n7\n8\n9\nTen"; + theirs.size = strlen(theirs.ptr); + theirs.path = "testfile.txt"; + theirs.mode = 0100755; + + opts.flags |= GIT_MERGE_FILE_IGNORE_WHITESPACE_CHANGE; + cl_git_pass(git_merge_file(&result, &ancestor, &ours, &theirs, &opts)); + + cl_assert_equal_i(1, result.automergeable); + + cl_assert_equal_s("testfile.txt", result.path); + cl_assert_equal_i(0100755, result.mode); + + cl_assert_equal_i(strlen(expected), result.len); + cl_assert_equal_strn(expected, result.ptr, result.len); + + git_merge_file_result_free(&result); +} + |