Commit 4ec209cd by Erik Aigner Committed by Patrick Steinhardt

tests: diff: test parsing diffs with a new file with spaces in its path

Add a test that verifies that we are able to parse patches which add a
new file that has spaces in its path.
parent 96b6fe11
...@@ -359,3 +359,21 @@ void test_diff_parse__lineinfo(void) ...@@ -359,3 +359,21 @@ void test_diff_parse__lineinfo(void)
git_patch_free(patch); git_patch_free(patch);
git_diff_free(diff); git_diff_free(diff);
} }
void test_diff_parse__new_file_with_space(void)
{
const char *content = PATCH_ORIGINAL_NEW_FILE_WITH_SPACE;
git_patch *patch;
git_diff *diff;
cl_git_pass(git_diff_from_buffer(&diff, content, strlen(content)));
cl_git_pass(git_patch_from_diff((git_patch **) &patch, diff, 0));
cl_assert_equal_p(patch->diff_opts.old_prefix, NULL);
cl_assert_equal_p(patch->delta->old_file.path, NULL);
cl_assert_equal_s(patch->diff_opts.new_prefix, "b/");
cl_assert_equal_s(patch->delta->new_file.path, "sp ace.txt");
git_patch_free(patch);
git_diff_free(diff);
}
...@@ -841,3 +841,12 @@ ...@@ -841,3 +841,12 @@
"diff --git a/binary.bin b/binary.bin\n" \ "diff --git a/binary.bin b/binary.bin\n" \
"index 27184d9..7c94f9e 100644\n" \ "index 27184d9..7c94f9e 100644\n" \
"Binary files a/binary.bin and b/binary.bin differ\n" "Binary files a/binary.bin and b/binary.bin differ\n"
#define PATCH_ORIGINAL_NEW_FILE_WITH_SPACE \
"diff --git a/sp ace.txt b/sp ace.txt\n" \
"new file mode 100644\n" \
"index 000000000..789819226\n" \
"--- /dev/null\n" \
"+++ b/sp ace.txt\n" \
"@@ -0,0 +1 @@\n" \
"+a\n"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment