summaryrefslogtreecommitdiff
path: root/spec/lcs_spec.rb
diff options
context:
space:
mode:
authorAustin Ziegler <austin@zieglers.ca>2014-05-06 00:08:02 -0400
committerAustin Ziegler <austin@zieglers.ca>2017-01-18 18:16:14 -0500
commit06ee20e929656d41c301f61fd447105c3840e410 (patch)
tree7325cd8e3279b71e5bc18302112e47cad3000a40 /spec/lcs_spec.rb
parent32727d6d0beb48672a1ee2d4a5c20bb81f7e301d (diff)
downloaddiff-lcs-06ee20e929656d41c301f61fd447105c3840e410.tar.gz
diff-lcs 1.3
- Updated testing and gem infrastructure. - Cleaning up documentation. - Modernizing specs. - Silence Ruby 2.4 Fixnum deprecation warnings. Fixes #36, #38. - Ensure test dependencies are loaded. Fixes #33, #34 so that specs can be run independently. - Fix issue #1 with incorrect intuition of patch direction. Tentative fix, but the failure cases pass now.
Diffstat (limited to 'spec/lcs_spec.rb')
-rw-r--r--spec/lcs_spec.rb44
1 files changed, 23 insertions, 21 deletions
diff --git a/spec/lcs_spec.rb b/spec/lcs_spec.rb
index 205d563..28533e3 100644
--- a/spec/lcs_spec.rb
+++ b/spec/lcs_spec.rb
@@ -2,53 +2,55 @@
require 'spec_helper'
-describe "Diff::LCS::Internals.lcs" do
+describe Diff::LCS::Internals, ".lcs" do
include Diff::LCS::SpecHelper::Matchers
- it "should return a meaningful LCS array with (seq1, seq2)" do
+ it "returns a meaningful LCS array with (seq1, seq2)" do
res = Diff::LCS::Internals.lcs(seq1, seq2)
# The result of the LCS (less the +nil+ values) must be as long as the
# correct result.
- res.compact.size.should == correct_lcs.size
- res.should correctly_map_sequence(seq1).to_other_sequence(seq2)
+ expect(res.compact.size).to eq(correct_lcs.size)
+ expect(res).to correctly_map_sequence(seq1).to_other_sequence(seq2)
# Compact these transformations and they should be the correct LCS.
x_seq1 = (0...res.size).map { |ix| res[ix] ? seq1[ix] : nil }.compact
x_seq2 = (0...res.size).map { |ix| res[ix] ? seq2[res[ix]] : nil }.compact
- x_seq1.should == correct_lcs
- x_seq2.should == correct_lcs
+ expect(x_seq1).to eq(correct_lcs)
+ expect(x_seq2).to eq(correct_lcs)
end
- it "should return all indexes with (hello, hello)" do
- Diff::LCS::Internals.lcs(hello, hello).should == (0...hello.size).to_a
+ it "returns all indexes with (hello, hello)" do
+ expect(Diff::LCS::Internals.lcs(hello, hello)).to \
+ eq((0...hello.size).to_a)
end
- it "should return all indexes with (hello_ary, hello_ary)" do
- Diff::LCS::Internals.lcs(hello_ary, hello_ary).should == (0...hello_ary.size).to_a
+ it "returns all indexes with (hello_ary, hello_ary)" do
+ expect(Diff::LCS::Internals.lcs(hello_ary, hello_ary)).to \
+ eq((0...hello_ary.size).to_a)
end
end
-describe "Diff::LCS.LCS" do
+describe Diff::LCS, ".LCS" do
include Diff::LCS::SpecHelper::Matchers
- it "should return the correct compacted values from Diff::LCS.LCS" do
+ it "returns the correct compacted values from Diff::LCS.LCS" do
res = Diff::LCS.LCS(seq1, seq2)
- res.should == correct_lcs
- res.compact.should == res
+ expect(res).to eq(correct_lcs)
+ expect(res.compact).to eq(res)
end
- it "should be transitive" do
+ it "is transitive" do
res = Diff::LCS.LCS(seq2, seq1)
- res.should == correct_lcs
- res.compact.should == res
+ expect(res).to eq(correct_lcs)
+ expect(res.compact).to eq(res)
end
- it "should return %W(h e l l o) with (hello, hello)" do
- Diff::LCS.LCS(hello, hello).should == hello.split(//)
+ it "returns %W(h e l l o) with (hello, hello)" do
+ expect(Diff::LCS.LCS(hello, hello)).to eq(hello.split(//))
end
- it "should return hello_ary with (hello_ary, hello_ary)" do
- Diff::LCS.LCS(hello_ary, hello_ary).should == hello_ary
+ it "returns hello_ary with (hello_ary, hello_ary)" do
+ expect(Diff::LCS.LCS(hello_ary, hello_ary)).to eq(hello_ary)
end
end