summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAustin Ziegler <austin@zieglers.ca>2013-04-20 16:55:53 -0700
committerAustin Ziegler <austin@zieglers.ca>2013-04-20 16:55:53 -0700
commit28fc343b704c4d7cfa6cc58ab799a0249c0da084 (patch)
tree614808a26ca9020d6e92a2823537e354b22a9f10
parent12df45ec8edef0727b3cec2ff6f9ba0d6fff305f (diff)
parent986cf913b7798d4cb244847eb0508a3fcafc9aa1 (diff)
downloaddiff-lcs-28fc343b704c4d7cfa6cc58ab799a0249c0da084.tar.gz
Merge pull request #18 from pck/fix_prune_common_start
Fix pruning of common sequences at start.
-rw-r--r--lib/diff/lcs/internals.rb1
-rw-r--r--spec/diff_spec.rb6
2 files changed, 7 insertions, 0 deletions
diff --git a/lib/diff/lcs/internals.rb b/lib/diff/lcs/internals.rb
index fe4ed9b..9d9e3f3 100644
--- a/lib/diff/lcs/internals.rb
+++ b/lib/diff/lcs/internals.rb
@@ -49,6 +49,7 @@ class << Diff::LCS::Internals
(a[a_start] == b[b_start]))
vector[a_start] = b_start
a_start += 1
+ b_start += 1
end
b_start = a_start
diff --git a/spec/diff_spec.rb b/spec/diff_spec.rb
index e82ab3d..95d7b40 100644
--- a/spec/diff_spec.rb
+++ b/spec/diff_spec.rb
@@ -31,6 +31,12 @@ describe "Diff::LCS.diff" do
change_diff(correct_diff).should == diff
end
+ it "should correctly diff 'xx' and 'xaxb'" do
+ left = 'xx'
+ right = 'xaxb'
+ Diff::LCS.patch(left, Diff::LCS.diff(left, right)).should == right
+ end
+
it "should return an empty diff with (hello, hello)" do
Diff::LCS.diff(hello, hello).should == []
end