From 9a29f8d56c37803a67af3ff4bc4c8724a126366f Mon Sep 17 00:00:00 2001 From: nulltoken Date: Fri, 4 May 2012 07:55:09 +0200 Subject: diff: fix the diffing of two identical blobs --- tests-clar/diff/blob.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'tests-clar/diff/blob.c') diff --git a/tests-clar/diff/blob.c b/tests-clar/diff/blob.c index 1bcb1f8e7..cceb00d25 100644 --- a/tests-clar/diff/blob.c +++ b/tests-clar/diff/blob.c @@ -173,6 +173,37 @@ void test_diff_blob__can_compare_against_null_blobs(void) cl_assert(exp.lines == 0); } +void assert_identical_blobs_comparison(diff_expects exp) +{ + cl_assert(exp.files == 1); + cl_assert(exp.file_unmodified == 1); + cl_assert(exp.hunks == 0); + cl_assert(exp.lines == 0); +} + +void test_diff_blob__can_compare_identical_blobs(void) +{ + cl_git_pass(git_diff_blobs( + d, d, &opts, &exp, diff_file_fn, diff_hunk_fn, diff_line_fn)); + + cl_assert(exp.at_least_one_of_them_is_binary == false); + assert_identical_blobs_comparison(exp); + + memset(&exp, 0, sizeof(exp)); + cl_git_pass(git_diff_blobs( + NULL, NULL, &opts, &exp, diff_file_fn, diff_hunk_fn, diff_line_fn)); + + cl_assert(exp.at_least_one_of_them_is_binary == false); + assert_identical_blobs_comparison(exp); + + memset(&exp, 0, sizeof(exp)); + cl_git_pass(git_diff_blobs( + alien, alien, &opts, &exp, diff_file_fn, diff_hunk_fn, diff_line_fn)); + + cl_assert(exp.at_least_one_of_them_is_binary == true); + assert_identical_blobs_comparison(exp); +} + void assert_binary_blobs_comparison(diff_expects exp) { cl_assert(exp.at_least_one_of_them_is_binary == true); -- cgit v1.2.1