tests/test-mq-qdiff.out
author Patrick Mezard <pmezard@gmail.com>
Wed, 11 Nov 2009 18:31:42 +0100
changeset 9827 4fe9ca519637
parent 9725 3f522d2fa633
child 9857 24bc6e414610
permissions -rw-r--r--
mdiff: fix diff -b/B/w on mixed whitespace hunks (issue127) Previous code was computing hunks then checking if these hunks could be ignored when taking whitespace/blank-lines options in accounts. This approach is simple but fails with hunks containing both whitespace and non-whitespace changes, the whole hunk is emitted while it can be mostly made of whitespace. The new version normalize the whitespaces before hunk generation, and test for blank-lines afterwards.

% init
% commit
adding base
% qnew mqbase
% qrefresh
% qdiff
diff -r 67e992f2c4f3 base
--- a/base
+++ b/base
@@ -1,1 +1,1 @@
-base
+patched
% qdiff dirname
diff -r 67e992f2c4f3 base
--- a/base
+++ b/base
@@ -1,1 +1,1 @@
-base
+patched
% qdiff filename
diff -r 67e992f2c4f3 base
--- a/base
+++ b/base
@@ -1,1 +1,1 @@
-base
+patched
% revert
% qpop
popping mqbase
patch queue now empty
% qdelete mqbase
% commit 2
adding lines
% qnew 2
% qdiff -U 1
diff -r 35fb829491c1 lines
--- a/lines
+++ b/lines
@@ -1,1 +1,3 @@
+
+
 1
@@ -4,4 +6,4 @@
 4
-hello world
-goodbye world
+hello  world
+     goodbye world
 7
% qdiff -b
diff -r 35fb829491c1 lines
--- a/lines
+++ b/lines
@@ -1,9 +1,11 @@
+
+
 1
 2
 3
 4
 hello world
-goodbye world
+     goodbye world
 7
 8
 9
% qdiff -U 1 -B
diff -r 35fb829491c1 lines
--- a/lines
+++ b/lines
@@ -4,4 +6,4 @@
 4
-hello world
-goodbye world
+hello  world
+     goodbye world
 7
% qdiff -w
diff -r 35fb829491c1 lines
--- a/lines
+++ b/lines
@@ -1,3 +1,5 @@
+
+
 1
 2
 3
% qdiff --inverse
diff -r 35fb829491c1 lines
--- a/lines
+++ b/lines
@@ -1,11 +1,9 @@
-
-
 1
 2
 3
 4
-hello  world
-     goodbye world
+hello world
+goodbye world
 7
 8
 9