Module: Hash::Cross::Etest
- Defined in:
- lib/vex/base/hash/cross.rb
Instance Method Summary collapse
- #assert_equal_sets(a, b) ⇒ Object
- #test_cross_1 ⇒ Object
- #test_cross_2 ⇒ Object
- #test_cross_2_w_order ⇒ Object
- #test_cross_simple ⇒ Object
Instance Method Details
#assert_equal_sets(a, b) ⇒ Object
51 52 53 54 55 56 |
# File 'lib/vex/base/hash/cross.rb', line 51 def assert_equal_sets(a, b) return assert_equal_sets(Set.new(a), b) unless a.is_a?(Set) return assert_equal_sets(a, Set.new(b)) unless b.is_a?(Set) assert_equal(a, b) end |
#test_cross_1 ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/vex/base/hash/cross.rb', line 58 def test_cross_1 uncrossed = { :a => [ 1, 2], :b => [ "bb", "cc"], :c => :cc } uncrossed_orig = uncrossed.dup crossed = [ { :a => [1, 2], :b => "bb", :c => :cc }, { :a => [1, 2], :b => "cc", :c => :cc } ] assert_equal_sets(crossed, uncrossed.cross(:b)) assert_equal(uncrossed_orig, uncrossed) end |
#test_cross_2 ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/vex/base/hash/cross.rb', line 71 def test_cross_2 uncrossed = { :a => [ 1, 2], :b => [ "bb", "cc"], :c => :cc } uncrossed_orig = uncrossed.dup crossed = [ { :a => 1, :b => "bb", :c => :cc }, { :a => 2, :b => "bb", :c => :cc }, { :a => 1, :b => "cc", :c => :cc }, { :a => 2, :b => "cc", :c => :cc } ] assert_equal_sets(crossed, uncrossed.cross) assert_equal(uncrossed_orig, uncrossed) end |
#test_cross_2_w_order ⇒ Object
86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/vex/base/hash/cross.rb', line 86 def test_cross_2_w_order uncrossed = { :a => [ 1, 2], :b => [ "bb", "cc"], :c => :cc } uncrossed_orig = uncrossed.dup crossed = [ { :a => 1, :b => "bb", :c => :cc }, { :a => 1, :b => "cc", :c => :cc }, { :a => 2, :b => "bb", :c => :cc }, { :a => 2, :b => "cc", :c => :cc } ] assert_equal(crossed, uncrossed.cross(:a, :b)) assert_equal(uncrossed_orig, uncrossed) end |
#test_cross_simple ⇒ Object
101 102 103 104 105 106 107 |
# File 'lib/vex/base/hash/cross.rb', line 101 def test_cross_simple uncrossed = { :a => :b } assert_equal([{:a=>:b}], uncrossed.cross) uncrossed = { :a => [ 1, :b ] } assert_equal([{:a=>1}, {:a=>:b}], uncrossed.cross) end |