You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by da...@apache.org on 2012/03/01 07:28:08 UTC
svn commit: r1295425 -
/subversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c
Author: danielsh
Date: Thu Mar 1 06:28:08 2012
New Revision: 1295425
URL: http://svn.apache.org/viewvc?rev=1295425&view=rev
Log:
Add a regression test for issue #4133, '"diff -x -w" showing wrong change'.
* subversion/tests/libsvn_diff/diff-diff3-test.c
(test_wrap): New test.
(test_list): Run it, XFail.
Modified:
subversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c
Modified: subversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c?rev=1295425&r1=1295424&r2=1295425&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c (original)
+++ subversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c Thu Mar 1 06:28:08 2012
@@ -2394,7 +2394,37 @@ merge_adjacent_changes(apr_pool_t *pool)
return SVN_NO_ERROR;
}
+/* Issue #4133, '"diff -x -w" showing wrong change'. */
+static svn_error_t *
+test_wrap(apr_pool_t *pool)
+{
+ char ldata[(1<<17) + 4+4+3+1];
+ char rdata[(1<<17) + 4+3+3+1];
+ svn_string_t left, right;
+ svn_diff_file_options_t *diff_opts = svn_diff_file_options_create(pool);
+ diff_opts->ignore_space = TRUE;
+ /* Two long lines. */
+ memset(ldata, '@', 1<<17);
+ memset(rdata, '@', 1<<17);
+ strcpy(&ldata[1<<17], "foo\n" "ba \n" "x \n");
+ strcpy(&rdata[1<<17], "foo\n" "ba\n" "x\t\n");
+
+ /* Cast them to svn_string_t. */
+ left.data = ldata;
+ right.data = rdata;
+ left.len = sizeof(ldata)-1;
+ right.len = sizeof(rdata)-1;
+
+ /* Diff them. Modulo whitespace, they are identical. */
+ {
+ svn_diff_t *diff;
+ SVN_ERR(svn_diff_mem_string_diff(&diff, &left, &right, diff_opts, pool));
+ SVN_TEST_ASSERT(FALSE == svn_diff_contains_diffs(diff));
+ }
+
+ return SVN_NO_ERROR;
+}
/* ========================================================================== */
@@ -2425,5 +2455,7 @@ struct svn_test_descriptor_t test_funcs[
"3-way merge with conflict styles"),
SVN_TEST_PASS2(test_diff4,
"4-way merge; see variance-adjusted-patching.html"),
+ SVN_TEST_XFAIL2(test_wrap,
+ "difference at the start of a 128KB window"),
SVN_TEST_NULL
};