diff --git a/spec/oga/blacklist_spec.rb b/spec/oga/blacklist_spec.rb index 759b519..b257b02 100644 --- a/spec/oga/blacklist_spec.rb +++ b/spec/oga/blacklist_spec.rb @@ -14,15 +14,15 @@ describe Oga::Blacklist do it 'returns true for a name not in the list' do list = described_class.new(%w{foo}) - list.allow?('bar').should == true - list.allow?('BAR').should == true + expect(list.allow?('bar')).to eq(true) + expect(list.allow?('BAR')).to eq(true) end it 'returns false for a name in the list' do list = described_class.new(%w{foo}) - list.allow?('foo').should == false - list.allow?('FOO').should == false + expect(list.allow?('foo')).to eq(false) + expect(list.allow?('FOO')).to eq(false) end end @@ -32,8 +32,8 @@ describe Oga::Blacklist do list2 = described_class.new(%w{bar}) list3 = list1 + list2 - list3.should be_an_instance_of(described_class) - list3.names.to_a.should == %w{foo FOO bar BAR} + expect(list3).to be_an_instance_of(described_class) + expect(list3.names.to_a).to eq(%w{foo FOO bar BAR}) end end end diff --git a/spec/oga/css/compiler/axes_spec.rb b/spec/oga/css/compiler/axes_spec.rb index d73667a..2b2e55c 100644 --- a/spec/oga/css/compiler/axes_spec.rb +++ b/spec/oga/css/compiler/axes_spec.rb @@ -10,15 +10,15 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing direct child nodes' do - evaluate_css(@document, 'root > a').should == node_set(@a1) + expect(evaluate_css(@document, 'root > a')).to eq(node_set(@a1)) end it 'returns a node set containing direct child nodes relative to a node' do - evaluate_css(@a1, '> a').should == @a1.children + expect(evaluate_css(@a1, '> a')).to eq(@a1.children) end it 'returns an empty node set for non matching child nodes' do - evaluate_css(@document, '> a').should == node_set + expect(evaluate_css(@document, '> a')).to eq(node_set) end end @@ -31,15 +31,15 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing following siblings' do - evaluate_css(@document, 'root a + b').should == node_set(@b1) + expect(evaluate_css(@document, 'root a + b')).to eq(node_set(@b1)) end it 'returns a node set containing following siblings relatie to a node' do - evaluate_css(@b1, '+ b').should == node_set(@b2) + expect(evaluate_css(@b1, '+ b')).to eq(node_set(@b2)) end it 'returns an empty node set for non matching following siblings' do - evaluate_css(@document, 'root a + c').should == node_set + expect(evaluate_css(@document, 'root a + c')).to eq(node_set) end end @@ -52,15 +52,15 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing following siblings' do - evaluate_css(@document, 'root a ~ b').should == node_set(@b1, @b2) + expect(evaluate_css(@document, 'root a ~ b')).to eq(node_set(@b1, @b2)) end it 'returns a node set containing following siblings relative to a node' do - evaluate_css(@b1, '~ b').should == node_set(@b2) + expect(evaluate_css(@b1, '~ b')).to eq(node_set(@b2)) end it 'returns an empty node set for non matching following siblings' do - evaluate_css(@document, 'root a ~ c').should == node_set + expect(evaluate_css(@document, 'root a ~ c')).to eq(node_set) end end end diff --git a/spec/oga/css/compiler/classes_spec.rb b/spec/oga/css/compiler/classes_spec.rb index c532212..75229f6 100644 --- a/spec/oga/css/compiler/classes_spec.rb +++ b/spec/oga/css/compiler/classes_spec.rb @@ -5,25 +5,25 @@ describe 'CSS selector evaluation' do it 'returns a node set containing a node with a single class' do document = parse('') - evaluate_css(document, '.foo').should == document.children + expect(evaluate_css(document, '.foo')).to eq(document.children) end it 'returns a node set containing a node having one of two classes' do document = parse('') - evaluate_css(document, '.foo').should == document.children + expect(evaluate_css(document, '.foo')).to eq(document.children) end it 'returns a node set containing a node having both classes' do document = parse('') - evaluate_css(document, '.foo.bar').should == document.children + expect(evaluate_css(document, '.foo.bar')).to eq(document.children) end it 'returns an empty node set for non matching classes' do document = parse('') - evaluate_css(document, '.foo').should == node_set + expect(evaluate_css(document, '.foo')).to eq(node_set) end end end diff --git a/spec/oga/css/compiler/ids_spec.rb b/spec/oga/css/compiler/ids_spec.rb index 10fd55f..5f4df98 100644 --- a/spec/oga/css/compiler/ids_spec.rb +++ b/spec/oga/css/compiler/ids_spec.rb @@ -7,11 +7,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing a node with a single ID' do - evaluate_css(@document, '#foo').should == @document.children + expect(evaluate_css(@document, '#foo')).to eq(@document.children) end it 'returns an empty node set for non matching IDs' do - evaluate_css(@document, '#bar').should == node_set + expect(evaluate_css(@document, '#bar')).to eq(node_set) end end end diff --git a/spec/oga/css/compiler/operators_spec.rb b/spec/oga/css/compiler/operators_spec.rb index 6efdb4b..f239fb9 100644 --- a/spec/oga/css/compiler/operators_spec.rb +++ b/spec/oga/css/compiler/operators_spec.rb @@ -8,11 +8,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes with matching attributes' do - evaluate_css(@document, 'x[a = "b"]').should == @document.children + expect(evaluate_css(@document, 'x[a = "b"]')).to eq(@document.children) end it 'returns an empty node set for non matching attribute values' do - evaluate_css(@document, 'x[a = "c"]').should == node_set + expect(evaluate_css(@document, 'x[a = "c"]')).to eq(node_set) end end @@ -20,19 +20,19 @@ describe 'CSS selector evaluation' do it 'returns a node set containing nodes with matching attributes' do document = parse('') - evaluate_css(document, 'x[a ~= "2"]').should == document.children + expect(evaluate_css(document, 'x[a ~= "2"]')).to eq(document.children) end it 'returns a node set containing nodes with single attribute values' do document = parse('') - evaluate_css(document, 'x[a ~= "1"]').should == document.children + expect(evaluate_css(document, 'x[a ~= "1"]')).to eq(document.children) end it 'returns an empty node set for non matching attributes' do document = parse('') - evaluate_css(document, 'x[a ~= "4"]').should == node_set + expect(evaluate_css(document, 'x[a ~= "4"]')).to eq(node_set) end end @@ -42,11 +42,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes with matching attributes' do - evaluate_css(@document, 'x[a ^= "fo"]').should == @document.children + expect(evaluate_css(@document, 'x[a ^= "fo"]')).to eq(@document.children) end it 'returns an empty node set for non matching attributes' do - evaluate_css(@document, 'x[a ^= "bar"]').should == node_set + expect(evaluate_css(@document, 'x[a ^= "bar"]')).to eq(node_set) end end @@ -56,11 +56,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes with matching attributes' do - evaluate_css(@document, 'x[a $= "oo"]').should == @document.children + expect(evaluate_css(@document, 'x[a $= "oo"]')).to eq(@document.children) end it 'returns an empty node set for non matching attributes' do - evaluate_css(@document, 'x[a $= "x"]').should == node_set + expect(evaluate_css(@document, 'x[a $= "x"]')).to eq(node_set) end end @@ -70,11 +70,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes with matching attributes' do - evaluate_css(@document, 'x[a *= "o"]').should == @document.children + expect(evaluate_css(@document, 'x[a *= "o"]')).to eq(@document.children) end it 'returns an empty node set for non matching attributes' do - evaluate_css(@document, 'x[a *= "x"]').should == node_set + expect(evaluate_css(@document, 'x[a *= "x"]')).to eq(node_set) end end @@ -82,19 +82,19 @@ describe 'CSS selector evaluation' do it 'returns a node set containing nodes with matching attributes' do document = parse('') - evaluate_css(document, 'x[a |= "foo"]').should == document.children + expect(evaluate_css(document, 'x[a |= "foo"]')).to eq(document.children) end it 'returns a node set containing nodes with single attribute values' do document = parse('') - evaluate_css(document, 'x[a |= "foo"]').should == document.children + expect(evaluate_css(document, 'x[a |= "foo"]')).to eq(document.children) end it 'returns an empty node set for non matching attributes' do document = parse('') - evaluate_css(document, 'x[a |= "foo"]').should == node_set + expect(evaluate_css(document, 'x[a |= "foo"]')).to eq(node_set) end end end diff --git a/spec/oga/css/compiler/paths_spec.rb b/spec/oga/css/compiler/paths_spec.rb index 6b34337..63fc91a 100644 --- a/spec/oga/css/compiler/paths_spec.rb +++ b/spec/oga/css/compiler/paths_spec.rb @@ -12,23 +12,23 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the root node' do - evaluate_css(@document, 'a').should == node_set(@a1) + expect(evaluate_css(@document, 'a')).to eq(node_set(@a1)) end it 'returns a node set containing nested nodes' do - evaluate_css(@document, 'a b').should == node_set(@b1, @b2) + expect(evaluate_css(@document, 'a b')).to eq(node_set(@b1, @b2)) end it 'returns a node set containing the union of multiple paths' do - evaluate_css(@document, 'b, ns1|c').should == node_set(@b1, @b2, @c1) + expect(evaluate_css(@document, 'b, ns1|c')).to eq(node_set(@b1, @b2, @c1)) end it 'returns a node set containing namespaced nodes' do - evaluate_css(@document, 'a ns1|c').should == node_set(@c1) + expect(evaluate_css(@document, 'a ns1|c')).to eq(node_set(@c1)) end it 'returns a node set containing wildcard nodes' do - evaluate_css(@document, 'a *').should == node_set(@b1, @b2, @c1) + expect(evaluate_css(@document, 'a *')).to eq(node_set(@b1, @b2, @c1)) end it 'returns a node set containing nodes with namespace wildcards' do @@ -36,11 +36,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes with a namespace name and name wildcard' do - evaluate_css(@document, 'a ns1|*').should == node_set(@c1) + expect(evaluate_css(@document, 'a ns1|*')).to eq(node_set(@c1)) end it 'returns a node set containing nodes using full wildcards' do - evaluate_css(@document, 'a *|*').should == node_set(@b1, @b2, @c1) + expect(evaluate_css(@document, 'a *|*')).to eq(node_set(@b1, @b2, @c1)) end end end diff --git a/spec/oga/css/compiler/predicates_spec.rb b/spec/oga/css/compiler/predicates_spec.rb index 8159439..af77ce9 100644 --- a/spec/oga/css/compiler/predicates_spec.rb +++ b/spec/oga/css/compiler/predicates_spec.rb @@ -9,11 +9,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes with an attribute' do - evaluate_css(@document, 'root a[class]').should == node_set(@a1) + expect(evaluate_css(@document, 'root a[class]')).to eq(node_set(@a1)) end it 'returns a node set containing nodes with a matching attribute value' do - evaluate_css(@document, 'root a[class="foo"]').should == node_set(@a1) + expect(evaluate_css(@document, 'root a[class="foo"]')).to eq(node_set(@a1)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/empty_spec.rb b/spec/oga/css/compiler/pseudo_classes/empty_spec.rb index 6d519cc..3c914a8 100644 --- a/spec/oga/css/compiler/pseudo_classes/empty_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/empty_spec.rb @@ -10,15 +10,15 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing empty nodes' do - evaluate_css(@document, 'root :empty').should == node_set(@a1) + expect(evaluate_css(@document, 'root :empty')).to eq(node_set(@a1)) end it 'returns a node set containing empty nodes with a node test' do - evaluate_css(@document, 'root a:empty').should == node_set(@a1) + expect(evaluate_css(@document, 'root a:empty')).to eq(node_set(@a1)) end it 'returns an empty node set containing non empty nodes' do - evaluate_css(@document, 'root b:empty').should == node_set + expect(evaluate_css(@document, 'root b:empty')).to eq(node_set) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/first_child_spec.rb b/spec/oga/css/compiler/pseudo_classes/first_child_spec.rb index 37d3cce..c049bb4 100644 --- a/spec/oga/css/compiler/pseudo_classes/first_child_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/first_child_spec.rb @@ -10,15 +10,15 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the first child node' do - evaluate_css(@document, 'root :first-child').should == node_set(@a1) + expect(evaluate_css(@document, 'root :first-child')).to eq(node_set(@a1)) end it 'returns a node set containing the first child node with a node test' do - evaluate_css(@document, 'root a:first-child').should == node_set(@a1) + expect(evaluate_css(@document, 'root a:first-child')).to eq(node_set(@a1)) end it 'returns an empty node set for non first-child nodes' do - evaluate_css(@document, 'root b:first-child').should == node_set + expect(evaluate_css(@document, 'root b:first-child')).to eq(node_set) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/first_of_type_spec.rb b/spec/oga/css/compiler/pseudo_classes/first_of_type_spec.rb index 99d0498..3fc86fe 100644 --- a/spec/oga/css/compiler/pseudo_classes/first_of_type_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/first_of_type_spec.rb @@ -18,8 +18,8 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing all first nodes' do - evaluate_css(@document, 'root a:first-of-type') - .should == node_set(@a1, @a3) + expect(evaluate_css(@document, 'root a:first-of-type')) + .to eq(node_set(@a1, @a3)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/last_child_spec.rb b/spec/oga/css/compiler/pseudo_classes/last_child_spec.rb index 09edf7a..463070a 100644 --- a/spec/oga/css/compiler/pseudo_classes/last_child_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/last_child_spec.rb @@ -10,15 +10,15 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the last child node' do - evaluate_css(@document, 'root :last-child').should == node_set(@b1) + expect(evaluate_css(@document, 'root :last-child')).to eq(node_set(@b1)) end it 'returns a node set containing the last child node with a node test' do - evaluate_css(@document, 'root b:last-child').should == node_set(@b1) + expect(evaluate_css(@document, 'root b:last-child')).to eq(node_set(@b1)) end it 'returns an empty node set for non last-child nodes' do - evaluate_css(@document, 'root a:last-child').should == node_set + expect(evaluate_css(@document, 'root a:last-child')).to eq(node_set) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/last_of_type_spec.rb b/spec/oga/css/compiler/pseudo_classes/last_of_type_spec.rb index 9fa1852..05223dd 100644 --- a/spec/oga/css/compiler/pseudo_classes/last_of_type_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/last_of_type_spec.rb @@ -18,8 +18,8 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing all last nodes' do - evaluate_css(@document, 'root a:last-of-type') - .should == node_set(@a2, @a4) + expect(evaluate_css(@document, 'root a:last-of-type')) + .to eq(node_set(@a2, @a4)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/nth_child_spec.rb b/spec/oga/css/compiler/pseudo_classes/nth_child_spec.rb index 47a6b46..99c5e31 100644 --- a/spec/oga/css/compiler/pseudo_classes/nth_child_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/nth_child_spec.rb @@ -13,36 +13,36 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the first child node' do - evaluate_css(@document, 'root :nth-child(1)').should == node_set(@a1) + expect(evaluate_css(@document, 'root :nth-child(1)')).to eq(node_set(@a1)) end it 'returns a node set containing even nodes' do - evaluate_css(@document, 'root :nth-child(even)') - .should == node_set(@a2, @a4) + expect(evaluate_css(@document, 'root :nth-child(even)')) + .to eq(node_set(@a2, @a4)) end it 'returns a node set containing odd nodes' do - evaluate_css(@document, 'root :nth-child(odd)') - .should == node_set(@a1, @a3) + expect(evaluate_css(@document, 'root :nth-child(odd)')) + .to eq(node_set(@a1, @a3)) end it 'returns a node set containing every 2 nodes starting at node 2' do - evaluate_css(@document, 'root :nth-child(2n+2)') - .should == node_set(@a2, @a4) + expect(evaluate_css(@document, 'root :nth-child(2n+2)')) + .to eq(node_set(@a2, @a4)) end it 'returns a node set containing all nodes' do - evaluate_css(@document, 'root :nth-child(n)').should == @root.children + expect(evaluate_css(@document, 'root :nth-child(n)')).to eq(@root.children) end it 'returns a node set containing the first two nodes' do - evaluate_css(@document, 'root :nth-child(-n+2)') - .should == node_set(@a1, @a2) + expect(evaluate_css(@document, 'root :nth-child(-n+2)')) + .to eq(node_set(@a1, @a2)) end it 'returns a node set containing all nodes starting at node 2' do - evaluate_css(@document, 'root :nth-child(n+2)') - .should == node_set(@a2, @a3, @a4) + expect(evaluate_css(@document, 'root :nth-child(n+2)')) + .to eq(node_set(@a2, @a3, @a4)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/nth_last_child_spec.rb b/spec/oga/css/compiler/pseudo_classes/nth_last_child_spec.rb index 6a91088..de3ed8b 100644 --- a/spec/oga/css/compiler/pseudo_classes/nth_last_child_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/nth_last_child_spec.rb @@ -13,37 +13,37 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the last child node' do - evaluate_css(@document, 'root :nth-last-child(1)').should == node_set(@a4) + expect(evaluate_css(@document, 'root :nth-last-child(1)')).to eq(node_set(@a4)) end it 'returns a node set containing even nodes' do - evaluate_css(@document, 'root :nth-last-child(even)') - .should == node_set(@a1, @a3) + expect(evaluate_css(@document, 'root :nth-last-child(even)')) + .to eq(node_set(@a1, @a3)) end it 'returns a node set containing odd nodes' do - evaluate_css(@document, 'root :nth-last-child(odd)') - .should == node_set(@a2, @a4) + expect(evaluate_css(@document, 'root :nth-last-child(odd)')) + .to eq(node_set(@a2, @a4)) end it 'returns a node set containing every 2 nodes starting at node 3' do - evaluate_css(@document, 'root :nth-last-child(2n+2)') - .should == node_set(@a1, @a3) + expect(evaluate_css(@document, 'root :nth-last-child(2n+2)')) + .to eq(node_set(@a1, @a3)) end it 'returns a node set containing all nodes' do - evaluate_css(@document, 'root :nth-last-child(n)') - .should == @root.children + expect(evaluate_css(@document, 'root :nth-last-child(n)')) + .to eq(@root.children) end it 'returns a node set containing the first two nodes' do - evaluate_css(@document, 'root :nth-last-child(-n+2)') - .should == node_set(@a3, @a4) + expect(evaluate_css(@document, 'root :nth-last-child(-n+2)')) + .to eq(node_set(@a3, @a4)) end it 'returns a node set containing all nodes starting at node 2' do - evaluate_css(@document, 'root :nth-last-child(n+2)') - .should == node_set(@a1, @a2, @a3) + expect(evaluate_css(@document, 'root :nth-last-child(n+2)')) + .to eq(node_set(@a1, @a2, @a3)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/nth_last_of_type_spec.rb b/spec/oga/css/compiler/pseudo_classes/nth_last_of_type_spec.rb index c9e8217..026b067 100644 --- a/spec/oga/css/compiler/pseudo_classes/nth_last_of_type_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/nth_last_of_type_spec.rb @@ -22,38 +22,38 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the first child node' do - evaluate_css(@document, 'root a:nth-last-of-type(1)') - .should == node_set(@a3, @a4) + expect(evaluate_css(@document, 'root a:nth-last-of-type(1)')) + .to eq(node_set(@a3, @a4)) end it 'returns a node set containing even nodes' do - evaluate_css(@document, 'root a:nth-last-of-type(even)') - .should == node_set(@a2) + expect(evaluate_css(@document, 'root a:nth-last-of-type(even)')) + .to eq(node_set(@a2)) end it 'returns a node set containing odd nodes' do - evaluate_css(@document, 'root a:nth-last-of-type(odd)') - .should == node_set(@a1, @a3, @a4) + expect(evaluate_css(@document, 'root a:nth-last-of-type(odd)')) + .to eq(node_set(@a1, @a3, @a4)) end it 'returns a node set containing every 2 nodes starting at node 2' do - evaluate_css(@document, 'root a:nth-last-of-type(2n+2)') - .should == node_set(@a2) + expect(evaluate_css(@document, 'root a:nth-last-of-type(2n+2)')) + .to eq(node_set(@a2)) end it 'returns a node set containing all nodes' do - evaluate_css(@document, 'root a:nth-last-of-type(n)') - .should == node_set(@a1, @a2, @a3, @a4) + expect(evaluate_css(@document, 'root a:nth-last-of-type(n)')) + .to eq(node_set(@a1, @a2, @a3, @a4)) end it 'returns a node set containing the first two nodes' do - evaluate_css(@document, 'root a:nth-last-of-type(-n+2)') - .should == node_set(@a2, @a3, @a4) + expect(evaluate_css(@document, 'root a:nth-last-of-type(-n+2)')) + .to eq(node_set(@a2, @a3, @a4)) end it 'returns a node set containing all nodes starting at node 2' do - evaluate_css(@document, 'root a:nth-last-of-type(n+2)') - .should == node_set(@a1, @a2) + expect(evaluate_css(@document, 'root a:nth-last-of-type(n+2)')) + .to eq(node_set(@a1, @a2)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/nth_of_type_spec.rb b/spec/oga/css/compiler/pseudo_classes/nth_of_type_spec.rb index b1a8994..600b0cf 100644 --- a/spec/oga/css/compiler/pseudo_classes/nth_of_type_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/nth_of_type_spec.rb @@ -22,38 +22,38 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the first child node' do - evaluate_css(@document, 'root a:nth-of-type(1)') - .should == node_set(@a1, @a4) + expect(evaluate_css(@document, 'root a:nth-of-type(1)')) + .to eq(node_set(@a1, @a4)) end it 'returns a node set containing even nodes' do - evaluate_css(@document, 'root a:nth-of-type(even)') - .should == node_set(@a2) + expect(evaluate_css(@document, 'root a:nth-of-type(even)')) + .to eq(node_set(@a2)) end it 'returns a node set containing odd nodes' do - evaluate_css(@document, 'root a:nth-of-type(odd)') - .should == node_set(@a1, @a3, @a4) + expect(evaluate_css(@document, 'root a:nth-of-type(odd)')) + .to eq(node_set(@a1, @a3, @a4)) end it 'returns a node set containing every 2 nodes starting at node 2' do - evaluate_css(@document, 'root a:nth-of-type(2n+2)') - .should == node_set(@a2) + expect(evaluate_css(@document, 'root a:nth-of-type(2n+2)')) + .to eq(node_set(@a2)) end it 'returns a node set containing all nodes' do - evaluate_css(@document, 'root a:nth-of-type(n)') - .should == node_set(@a1, @a2, @a3, @a4) + expect(evaluate_css(@document, 'root a:nth-of-type(n)')) + .to eq(node_set(@a1, @a2, @a3, @a4)) end it 'returns a node set containing the first two nodes' do - evaluate_css(@document, 'root a:nth-of-type(-n+2)') - .should == node_set(@a1, @a2, @a4) + expect(evaluate_css(@document, 'root a:nth-of-type(-n+2)')) + .to eq(node_set(@a1, @a2, @a4)) end it 'returns a node set containing all nodes starting at node 2' do - evaluate_css(@document, 'root a:nth-of-type(n+2)') - .should == node_set(@a2, @a3) + expect(evaluate_css(@document, 'root a:nth-of-type(n+2)')) + .to eq(node_set(@a2, @a3)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/nth_spec.rb b/spec/oga/css/compiler/pseudo_classes/nth_spec.rb index 407a3ea..84e6f99 100644 --- a/spec/oga/css/compiler/pseudo_classes/nth_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/nth_spec.rb @@ -11,11 +11,11 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the first node' do - evaluate_css(@document, 'root a:nth(1)').should == node_set(@a1) + expect(evaluate_css(@document, 'root a:nth(1)')).to eq(node_set(@a1)) end it 'returns a node set containing the second node' do - evaluate_css(@document, 'root a:nth(2)').should == node_set(@a2) + expect(evaluate_css(@document, 'root a:nth(2)')).to eq(node_set(@a2)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/only_child_spec.rb b/spec/oga/css/compiler/pseudo_classes/only_child_spec.rb index 0695df4..122f032 100644 --- a/spec/oga/css/compiler/pseudo_classes/only_child_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/only_child_spec.rb @@ -11,7 +11,7 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes' do - evaluate_css(@document, 'root :only-child').should == node_set(@c1, @c2) + expect(evaluate_css(@document, 'root :only-child')).to eq(node_set(@c1, @c2)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/only_of_type_spec.rb b/spec/oga/css/compiler/pseudo_classes/only_of_type_spec.rb index 4e83e6c..9e38519 100644 --- a/spec/oga/css/compiler/pseudo_classes/only_of_type_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/only_of_type_spec.rb @@ -11,7 +11,7 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing nodes' do - evaluate_css(@document, 'root a :only-of-type').should == node_set(@c1) + expect(evaluate_css(@document, 'root a :only-of-type')).to eq(node_set(@c1)) end end end diff --git a/spec/oga/css/compiler/pseudo_classes/root_spec.rb b/spec/oga/css/compiler/pseudo_classes/root_spec.rb index 9686301..2ebbd59 100644 --- a/spec/oga/css/compiler/pseudo_classes/root_spec.rb +++ b/spec/oga/css/compiler/pseudo_classes/root_spec.rb @@ -7,7 +7,7 @@ describe 'CSS selector evaluation' do end it 'returns a node set containing the root node' do - evaluate_css(@document, ':root').should == @document.children + expect(evaluate_css(@document, ':root')).to eq(@document.children) end end end diff --git a/spec/oga/css/lexer/axes_spec.rb b/spec/oga/css/lexer/axes_spec.rb index 0471b62..7537354 100644 --- a/spec/oga/css/lexer/axes_spec.rb +++ b/spec/oga/css/lexer/axes_spec.rb @@ -3,63 +3,63 @@ require 'spec_helper' describe Oga::CSS::Lexer do describe 'axes' do it 'lexes the > axis' do - lex_css('>').should == [[:T_GREATER, nil]] + expect(lex_css('>')).to eq([[:T_GREATER, nil]]) end it 'lexes the expression "> y"' do - lex_css('> y').should == [[:T_GREATER, nil], [:T_IDENT, 'y']] + expect(lex_css('> y')).to eq([[:T_GREATER, nil], [:T_IDENT, 'y']]) end it 'lexes the expression "x > y"' do - lex_css('x > y').should == [ + expect(lex_css('x > y')).to eq([ [:T_IDENT, 'x'], [:T_GREATER, nil], [:T_IDENT, 'y'] - ] + ]) end it 'lexes the expression "x>y"' do - lex_css('x>y').should == lex_css('x > y') + expect(lex_css('x>y')).to eq(lex_css('x > y')) end it 'lexes the + axis' do - lex_css('+').should == [[:T_PLUS, nil]] + expect(lex_css('+')).to eq([[:T_PLUS, nil]]) end it 'lexes the expression "+ y"' do - lex_css('+ y').should == [[:T_PLUS, nil], [:T_IDENT, 'y']] + expect(lex_css('+ y')).to eq([[:T_PLUS, nil], [:T_IDENT, 'y']]) end it 'lexes the expression "x + y"' do - lex_css('x + y').should == [ + expect(lex_css('x + y')).to eq([ [:T_IDENT, 'x'], [:T_PLUS, nil], [:T_IDENT, 'y'] - ] + ]) end it 'lexes the expression "x+y"' do - lex_css('x+y').should == lex_css('x + y') + expect(lex_css('x+y')).to eq(lex_css('x + y')) end it 'lexes the ~ axis' do - lex_css('~').should == [[:T_TILDE, nil]] + expect(lex_css('~')).to eq([[:T_TILDE, nil]]) end it 'lexes the expression "~ y"' do - lex_css('~ y').should == [[:T_TILDE, nil], [:T_IDENT, 'y']] + expect(lex_css('~ y')).to eq([[:T_TILDE, nil], [:T_IDENT, 'y']]) end it 'lexes the expression "x ~ y"' do - lex_css('x ~ y').should == [ + expect(lex_css('x ~ y')).to eq([ [:T_IDENT, 'x'], [:T_TILDE, nil], [:T_IDENT, 'y'] - ] + ]) end it 'lexes the expression "x~y"' do - lex_css('x~y').should == lex_css('x ~ y') + expect(lex_css('x~y')).to eq(lex_css('x ~ y')) end end end diff --git a/spec/oga/css/lexer/namespaces_spec.rb b/spec/oga/css/lexer/namespaces_spec.rb index 2c881bf..58d8c6f 100644 --- a/spec/oga/css/lexer/namespaces_spec.rb +++ b/spec/oga/css/lexer/namespaces_spec.rb @@ -3,19 +3,19 @@ require 'spec_helper' describe Oga::CSS::Lexer do describe 'namespaces' do it 'lexes a path containing a namespace name' do - lex_css('foo|bar').should == [ + expect(lex_css('foo|bar')).to eq([ [:T_IDENT, 'foo'], [:T_PIPE, nil], [:T_IDENT, 'bar'] - ] + ]) end it 'lexes a path containing a namespace wildcard' do - lex_css('*|foo').should == [ + expect(lex_css('*|foo')).to eq([ [:T_IDENT, '*'], [:T_PIPE, nil], [:T_IDENT, 'foo'] - ] + ]) end end end diff --git a/spec/oga/css/lexer/operators_spec.rb b/spec/oga/css/lexer/operators_spec.rb index 6e37e21..767e01d 100644 --- a/spec/oga/css/lexer/operators_spec.rb +++ b/spec/oga/css/lexer/operators_spec.rb @@ -3,87 +3,87 @@ require 'spec_helper' describe Oga::CSS::Lexer do describe 'operators' do it 'lexes the = operator' do - lex_css('[foo="bar"]').should == [ + expect(lex_css('[foo="bar"]')).to eq([ [:T_LBRACK, nil], [:T_IDENT, 'foo'], [:T_EQ, nil], [:T_STRING, 'bar'], [:T_RBRACK, nil] - ] + ]) end it 'lexes the ~= operator' do - lex_css('[foo~="bar"]').should == [ + expect(lex_css('[foo~="bar"]')).to eq([ [:T_LBRACK, nil], [:T_IDENT, 'foo'], [:T_SPACE_IN, nil], [:T_STRING, 'bar'], [:T_RBRACK, nil] - ] + ]) end it 'lexes the ^= operator' do - lex_css('[foo^="bar"]').should == [ + expect(lex_css('[foo^="bar"]')).to eq([ [:T_LBRACK, nil], [:T_IDENT, 'foo'], [:T_STARTS_WITH, nil], [:T_STRING, 'bar'], [:T_RBRACK, nil] - ] + ]) end it 'lexes the $= operator' do - lex_css('[foo$="bar"]').should == [ + expect(lex_css('[foo$="bar"]')).to eq([ [:T_LBRACK, nil], [:T_IDENT, 'foo'], [:T_ENDS_WITH, nil], [:T_STRING, 'bar'], [:T_RBRACK, nil], - ] + ]) end it 'lexes the *= operator' do - lex_css('[foo*="bar"]').should == [ + expect(lex_css('[foo*="bar"]')).to eq([ [:T_LBRACK, nil], [:T_IDENT, 'foo'], [:T_IN, nil], [:T_STRING, 'bar'], [:T_RBRACK, nil] - ] + ]) end it 'lexes the |= operator' do - lex_css('[foo|="bar"]').should == [ + expect(lex_css('[foo|="bar"]')).to eq([ [:T_LBRACK, nil], [:T_IDENT, 'foo'], [:T_HYPHEN_IN, nil], [:T_STRING, 'bar'], [:T_RBRACK, nil] - ] + ]) end it 'lexes the = operator surrounded by whitespace' do - lex_css('[foo = "bar"]').should == lex_css('[foo="bar"]') + expect(lex_css('[foo = "bar"]')).to eq(lex_css('[foo="bar"]')) end it 'lexes the ~= operator surrounded by whitespace' do - lex_css('[foo ~= "bar"]').should == lex_css('[foo~="bar"]') + expect(lex_css('[foo ~= "bar"]')).to eq(lex_css('[foo~="bar"]')) end it 'lexes the ^= operator surrounded by whitespace' do - lex_css('[foo ^= "bar"]').should == lex_css('[foo^="bar"]') + expect(lex_css('[foo ^= "bar"]')).to eq(lex_css('[foo^="bar"]')) end it 'lexes the $= operator surrounded by whitespace' do - lex_css('[foo $= "bar"]').should == lex_css('[foo$="bar"]') + expect(lex_css('[foo $= "bar"]')).to eq(lex_css('[foo$="bar"]')) end it 'lexes the *= operator surrounded by whitespace' do - lex_css('[foo *= "bar"]').should == lex_css('[foo*="bar"]') + expect(lex_css('[foo *= "bar"]')).to eq(lex_css('[foo*="bar"]')) end it 'lexes the |= operator surrounded by whitespace' do - lex_css('[foo |= "bar"]').should == lex_css('[foo|="bar"]') + expect(lex_css('[foo |= "bar"]')).to eq(lex_css('[foo|="bar"]')) end end end diff --git a/spec/oga/css/lexer/paths_spec.rb b/spec/oga/css/lexer/paths_spec.rb index 3038bc2..225595c 100644 --- a/spec/oga/css/lexer/paths_spec.rb +++ b/spec/oga/css/lexer/paths_spec.rb @@ -5,73 +5,73 @@ require 'spec_helper' describe Oga::CSS::Lexer do describe 'paths' do it 'lexes a simple path' do - lex_css('h3').should == [[:T_IDENT, 'h3']] + expect(lex_css('h3')).to eq([[:T_IDENT, 'h3']]) end it 'lexes a path with Unicode characters' do - lex_css('áâã').should == [[:T_IDENT, 'áâã']] + expect(lex_css('áâã')).to eq([[:T_IDENT, 'áâã']]) end it 'lexes a path with Unicode and ASCII characters' do - lex_css('áâãfoo').should == [[:T_IDENT, 'áâãfoo']] + expect(lex_css('áâãfoo')).to eq([[:T_IDENT, 'áâãfoo']]) end it 'lexes a simple path starting with an underscore' do - lex_css('_h3').should == [[:T_IDENT, '_h3']] + expect(lex_css('_h3')).to eq([[:T_IDENT, '_h3']]) end it 'lexes a path with an escaped identifier' do - lex_css('foo\.bar\.baz').should == [[:T_IDENT, 'foo.bar.baz']] + expect(lex_css('foo\.bar\.baz')).to eq([[:T_IDENT, 'foo.bar.baz']]) end it 'lexes a path with an escaped identifier followed by another identifier' do - lex_css('foo\.bar baz').should == [ + expect(lex_css('foo\.bar baz')).to eq([ [:T_IDENT, 'foo.bar'], [:T_SPACE, nil], [:T_IDENT, 'baz'] - ] + ]) end it 'lexes a path with two members' do - lex_css('div h3').should == [ + expect(lex_css('div h3')).to eq([ [:T_IDENT, 'div'], [:T_SPACE, nil], [:T_IDENT, 'h3'] - ] + ]) end it 'lexes a path with two members separated by multiple spaces' do - lex_css('div h3').should == [ + expect(lex_css('div h3')).to eq([ [:T_IDENT, 'div'], [:T_SPACE, nil], [:T_IDENT, 'h3'] - ] + ]) end it 'lexes two paths' do - lex_css('foo, bar').should == [ + expect(lex_css('foo, bar')).to eq([ [:T_IDENT, 'foo'], [:T_COMMA, nil], [:T_IDENT, 'bar'] - ] + ]) end it 'lexes a path selecting an ID' do - lex_css('#foo').should == [ + expect(lex_css('#foo')).to eq([ [:T_HASH, nil], [:T_IDENT, 'foo'] - ] + ]) end it 'lexes a path selecting a class' do - lex_css('.foo').should == [ + expect(lex_css('.foo')).to eq([ [:T_DOT, nil], [:T_IDENT, 'foo'] - ] + ]) end it 'lexes a wildcard path' do - lex_css('*').should == [[:T_IDENT, '*']] + expect(lex_css('*')).to eq([[:T_IDENT, '*']]) end end end diff --git a/spec/oga/css/lexer/predicates_spec.rb b/spec/oga/css/lexer/predicates_spec.rb index 92d917c..f311689 100644 --- a/spec/oga/css/lexer/predicates_spec.rb +++ b/spec/oga/css/lexer/predicates_spec.rb @@ -3,12 +3,12 @@ require 'spec_helper' describe Oga::CSS::Lexer do describe 'predicates' do it 'lexes a path containing a simple predicate' do - lex_css('foo[bar]').should == [ + expect(lex_css('foo[bar]')).to eq([ [:T_IDENT, 'foo'], [:T_LBRACK, nil], [:T_IDENT, 'bar'], [:T_RBRACK, nil] - ] + ]) end end end diff --git a/spec/oga/css/lexer/pseudo_classes_spec.rb b/spec/oga/css/lexer/pseudo_classes_spec.rb index c307fe0..b5ea2f9 100644 --- a/spec/oga/css/lexer/pseudo_classes_spec.rb +++ b/spec/oga/css/lexer/pseudo_classes_spec.rb @@ -3,86 +3,86 @@ require 'spec_helper' describe Oga::CSS::Lexer do describe 'pseudo classes' do it 'lexes the :root pseudo class' do - lex_css(':root').should == [ + expect(lex_css(':root')).to eq([ [:T_COLON, nil], [:T_IDENT, 'root'] - ] + ]) end it 'lexes the :nth-child pseudo class' do - lex_css(':nth-child(1)').should == [ + expect(lex_css(':nth-child(1)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], [:T_INT, 1], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child pseudo class with extra whitespace' do - lex_css(':nth-child( 1)').should == [ + expect(lex_css(':nth-child( 1)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], [:T_INT, 1], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(odd) pseudo class' do - lex_css(':nth-child(odd)').should == [ + expect(lex_css(':nth-child(odd)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], [:T_ODD, nil], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(even) pseudo class' do - lex_css(':nth-child(even)').should == [ + expect(lex_css(':nth-child(even)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], [:T_EVEN, nil], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(n) pseudo class' do - lex_css(':nth-child(n)').should == [ + expect(lex_css(':nth-child(n)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], [:T_NTH, nil], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(-n) pseudo class' do - lex_css(':nth-child(-n)').should == [ + expect(lex_css(':nth-child(-n)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], [:T_MINUS, nil], [:T_NTH, nil], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(2n) pseudo class' do - lex_css(':nth-child(2n)').should == [ + expect(lex_css(':nth-child(2n)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], [:T_INT, 2], [:T_NTH, nil], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(2n+1) pseudo class' do - lex_css(':nth-child(2n+1)').should == [ + expect(lex_css(':nth-child(2n+1)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], @@ -90,11 +90,11 @@ describe Oga::CSS::Lexer do [:T_NTH, nil], [:T_INT, 1], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(2n-1) pseudo class' do - lex_css(':nth-child(2n-1)').should == [ + expect(lex_css(':nth-child(2n-1)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], @@ -102,11 +102,11 @@ describe Oga::CSS::Lexer do [:T_NTH, nil], [:T_INT, -1], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :nth-child(-2n-1) pseudo class' do - lex_css(':nth-child(-2n-1)').should == [ + expect(lex_css(':nth-child(-2n-1)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'nth-child'], [:T_LPAREN, nil], @@ -114,28 +114,28 @@ describe Oga::CSS::Lexer do [:T_NTH, nil], [:T_INT, -1], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :lang(fr) pseudo class' do - lex_css(':lang(fr)').should == [ + expect(lex_css(':lang(fr)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'lang'], [:T_LPAREN, nil], [:T_IDENT, 'fr'], [:T_RPAREN, nil] - ] + ]) end it 'lexes the :not(#foo) pseudo class' do - lex_css(':not(#foo)').should == [ + expect(lex_css(':not(#foo)')).to eq([ [:T_COLON, nil], [:T_IDENT, 'not'], [:T_LPAREN, nil], [:T_HASH, nil], [:T_IDENT, 'foo'], [:T_RPAREN, nil] - ] + ]) end end end diff --git a/spec/oga/css/lexer/strings_spec.rb b/spec/oga/css/lexer/strings_spec.rb index 1c782f5..e91e018 100644 --- a/spec/oga/css/lexer/strings_spec.rb +++ b/spec/oga/css/lexer/strings_spec.rb @@ -3,19 +3,19 @@ require 'spec_helper' describe Oga::CSS::Lexer do describe 'strings' do it 'lexes a single quoted string' do - lex_css("['foo']").should == [ + expect(lex_css("['foo']")).to eq([ [:T_LBRACK, nil], [:T_STRING, 'foo'], [:T_RBRACK, nil] - ] + ]) end it 'lexes a double quoted string' do - lex_css('["foo"]').should == [ + expect(lex_css('["foo"]')).to eq([ [:T_LBRACK, nil], [:T_STRING, 'foo'], [:T_RBRACK, nil] - ] + ]) end end end diff --git a/spec/oga/css/parser/axes_spec.rb b/spec/oga/css/parser/axes_spec.rb index d09cbfd..5b7a0fb 100644 --- a/spec/oga/css/parser/axes_spec.rb +++ b/spec/oga/css/parser/axes_spec.rb @@ -3,72 +3,72 @@ require 'spec_helper' describe Oga::CSS::Parser do describe 'axes' do it 'parses the > axis' do - parse_css('x > y').should == parse_xpath('descendant::x/y') + expect(parse_css('x > y')).to eq(parse_xpath('descendant::x/y')) end it 'parses the > axis without whitespace' do - parse_css('x>y').should == parse_css('x > y') + expect(parse_css('x>y')).to eq(parse_css('x > y')) end it 'parses the > axis called on another > axis' do - parse_css('a > b > c').should == parse_xpath('descendant::a/b/c') + expect(parse_css('a > b > c')).to eq(parse_xpath('descendant::a/b/c')) end it 'parses an > axis followed by an element with an ID' do - parse_css('x > foo#bar').should == parse_xpath( + expect(parse_css('x > foo#bar')).to eq(parse_xpath( 'descendant::x/foo[@id="bar"]' - ) + )) end it 'parses an > axis followed by an element with a class' do - parse_css('x > foo.bar').should == parse_xpath( + expect(parse_css('x > foo.bar')).to eq(parse_xpath( 'descendant::x/foo[contains(concat(" ", @class, " "), " bar ")]' - ) + )) end it 'parses the + axis' do - parse_css('x + y').should == parse_xpath( + expect(parse_css('x + y')).to eq(parse_xpath( 'descendant::x/following-sibling::*[1]/self::y' - ) + )) end it 'parses the + axis without whitespace' do - parse_css('x+y').should == parse_css('x + y') + expect(parse_css('x+y')).to eq(parse_css('x + y')) end it 'parses the + axis with an identifier only at the right-hand side' do - parse_css('+ y').should == parse_xpath( + expect(parse_css('+ y')).to eq(parse_xpath( 'following-sibling::*[1]/self::y' - ) + )) end it 'parses the + axis called on another + axis' do - parse_css('a + b + c').should == parse_xpath( + expect(parse_css('a + b + c')).to eq(parse_xpath( 'descendant::a/following-sibling::*[1]/self::b/' \ 'following-sibling::*[1]/self::c' - ) + )) end it 'parses the ~ axis' do - parse_css('x ~ y').should == parse_xpath( + expect(parse_css('x ~ y')).to eq(parse_xpath( 'descendant::x/following-sibling::y' - ) + )) end it 'parses the ~ axis without whitespace' do - parse_css('x~y').should == parse_css('x ~ y') + expect(parse_css('x~y')).to eq(parse_css('x ~ y')) end it 'parses the ~ axis followed by another node test' do - parse_css('x ~ y z').should == parse_xpath( + expect(parse_css('x ~ y z')).to eq(parse_xpath( 'descendant::x/following-sibling::y/descendant::z' - ) + )) end it 'parses the ~ axis called on another ~ axis' do - parse_css('a ~ b ~ c').should == parse_xpath( + expect(parse_css('a ~ b ~ c')).to eq(parse_xpath( 'descendant::a/following-sibling::b/following-sibling::c' - ) + )) end end end diff --git a/spec/oga/css/parser/cache_spec.rb b/spec/oga/css/parser/cache_spec.rb index 4ddbad2..c84e884 100644 --- a/spec/oga/css/parser/cache_spec.rb +++ b/spec/oga/css/parser/cache_spec.rb @@ -7,21 +7,21 @@ describe Oga::CSS::Parser do end it 'parses an expression' do - described_class.parse_with_cache('foo') - .should == s(:axis, 'descendant', s(:test, nil, 'foo')) + expect(described_class.parse_with_cache('foo')) + .to eq(s(:axis, 'descendant', s(:test, nil, 'foo'))) end it 'caches an expression after parsing it' do - described_class.any_instance - .should_receive(:parse) + expect_any_instance_of(described_class) + .to receive(:parse) .once .and_call_original - described_class.parse_with_cache('foo') - .should == s(:axis, 'descendant', s(:test, nil, 'foo')) + expect(described_class.parse_with_cache('foo')) + .to eq(s(:axis, 'descendant', s(:test, nil, 'foo'))) - described_class.parse_with_cache('foo') - .should == s(:axis, 'descendant', s(:test, nil, 'foo')) + expect(described_class.parse_with_cache('foo')) + .to eq(s(:axis, 'descendant', s(:test, nil, 'foo'))) end end end diff --git a/spec/oga/css/parser/classes_spec.rb b/spec/oga/css/parser/classes_spec.rb index 1bd41ff..42063d8 100644 --- a/spec/oga/css/parser/classes_spec.rb +++ b/spec/oga/css/parser/classes_spec.rb @@ -3,29 +3,29 @@ require 'spec_helper' describe Oga::CSS::Parser do describe 'classes' do it 'parses a class selector' do - parse_css('.foo').should == parse_xpath( + expect(parse_css('.foo')).to eq(parse_xpath( 'descendant::*[contains(concat(" ", @class, " "), " foo ")]' - ) + )) end it 'parses a selector for an element with a class' do - parse_css('foo.bar').should == parse_xpath( + expect(parse_css('foo.bar')).to eq(parse_xpath( 'descendant::foo[contains(concat(" ", @class, " "), " bar ")]' - ) + )) end it 'parses a selector using multiple classes' do - parse_css('.foo.bar').should == parse_xpath( + expect(parse_css('.foo.bar')).to eq(parse_xpath( 'descendant::*[contains(concat(" ", @class, " "), " foo ") ' \ 'and contains(concat(" ", @class, " "), " bar ")]' - ) + )) end it 'parses a selector using a class and an ID' do - parse_css('#foo.bar').should == parse_xpath( + expect(parse_css('#foo.bar')).to eq(parse_xpath( 'descendant::*[@id="foo" and ' \ 'contains(concat(" ", @class, " "), " bar ")]' - ) + )) end end end diff --git a/spec/oga/css/parser/ids_spec.rb b/spec/oga/css/parser/ids_spec.rb index 63f53f7..c6eeaef 100644 --- a/spec/oga/css/parser/ids_spec.rb +++ b/spec/oga/css/parser/ids_spec.rb @@ -3,24 +3,24 @@ require 'spec_helper' describe Oga::CSS::Parser do describe 'IDs' do it 'parses an ID selector' do - parse_css('#foo').should == parse_xpath('descendant::*[@id="foo"]') + expect(parse_css('#foo')).to eq(parse_xpath('descendant::*[@id="foo"]')) end it 'parses a selector for an element with an ID' do - parse_css('foo#bar').should == parse_xpath('descendant::foo[@id="bar"]') + expect(parse_css('foo#bar')).to eq(parse_xpath('descendant::foo[@id="bar"]')) end it 'parses a selector using multiple IDs' do - parse_css('#foo#bar').should == parse_xpath( + expect(parse_css('#foo#bar')).to eq(parse_xpath( 'descendant::*[@id="foo" and @id="bar"]' - ) + )) end it 'parses a selector using an ID and a class' do - parse_css('.foo#bar').should == parse_xpath( + expect(parse_css('.foo#bar')).to eq(parse_xpath( 'descendant::*[contains(concat(" ", @class, " "), " foo ") ' \ 'and @id="bar"]' - ) + )) end end end diff --git a/spec/oga/css/parser/operators_spec.rb b/spec/oga/css/parser/operators_spec.rb index 4dfb4fc..e2f8e84 100644 --- a/spec/oga/css/parser/operators_spec.rb +++ b/spec/oga/css/parser/operators_spec.rb @@ -3,39 +3,39 @@ require 'spec_helper' describe Oga::CSS::Parser do describe 'operators' do it 'parses the = operator' do - parse_css('x[a="b"]').should == parse_xpath('descendant::x[@a="b"]') + expect(parse_css('x[a="b"]')).to eq(parse_xpath('descendant::x[@a="b"]')) end it 'parses the ~= operator' do - parse_css('x[a~="b"]').should == parse_xpath( + expect(parse_css('x[a~="b"]')).to eq(parse_xpath( 'descendant::x[contains(concat(" ", @a, " "), ' \ 'concat(" ", "b", " "))]' - ) + )) end it 'parses the ^= operator' do - parse_css('x[a^="b"]').should == parse_xpath( + expect(parse_css('x[a^="b"]')).to eq(parse_xpath( 'descendant::x[starts-with(@a, "b")]' - ) + )) end it 'parses the $= operator' do - parse_css('x[a$="b"]').should == parse_xpath( + expect(parse_css('x[a$="b"]')).to eq(parse_xpath( 'descendant::x[substring(@a, string-length(@a) - ' \ 'string-length("b") + 1, string-length("b")) = "b"]' - ) + )) end it 'parses the *= operator' do - parse_css('x[a*="b"]').should == parse_xpath( + expect(parse_css('x[a*="b"]')).to eq(parse_xpath( 'descendant::x[contains(@a, "b")]' - ) + )) end it 'parses the |= operator' do - parse_css('x[a|="b"]').should == parse_xpath( + expect(parse_css('x[a|="b"]')).to eq(parse_xpath( 'descendant::x[@a = "b" or starts-with(@a, concat("b", "-"))]' - ) + )) end end end diff --git a/spec/oga/css/parser/paths_spec.rb b/spec/oga/css/parser/paths_spec.rb index 5307050..7273a9a 100644 --- a/spec/oga/css/parser/paths_spec.rb +++ b/spec/oga/css/parser/paths_spec.rb @@ -3,26 +3,29 @@ require 'spec_helper' describe Oga::CSS::Parser do describe 'paths' do it 'parses a single path' do - parse_css('foo').should == parse_xpath('descendant::foo') + expect(parse_css('foo')).to eq(parse_xpath('descendant::foo')) end it 'parses a path using a namespace' do - parse_css('ns|foo').should == parse_xpath('descendant::ns:foo') + expect(parse_css('ns|foo')).to eq(parse_xpath('descendant::ns:foo')) end it 'parses a path using two selectors' do - parse_css('foo bar').should == + expect(parse_css('foo bar')).to eq( parse_xpath('descendant::foo/descendant::bar') + ) end it 'parses two paths separated by a comma' do - parse_css('foo, bar').should == + expect(parse_css('foo, bar')).to eq( parse_xpath('descendant::foo | descendant::bar') + ) end it 'parses three paths separated by a comma' do - parse_css('foo, bar, baz').should == + expect(parse_css('foo, bar, baz')).to eq( parse_xpath('descendant::foo | descendant::bar | descendant::baz') + ) end end end diff --git a/spec/oga/css/parser/predicates_spec.rb b/spec/oga/css/parser/predicates_spec.rb index 1f558db..0a4be39 100644 --- a/spec/oga/css/parser/predicates_spec.rb +++ b/spec/oga/css/parser/predicates_spec.rb @@ -3,19 +3,19 @@ require 'spec_helper' describe Oga::CSS::Parser do describe 'predicates' do it 'parses a predicate' do - parse_css('foo[bar]').should == parse_xpath('descendant::foo[@bar]') + expect(parse_css('foo[bar]')).to eq(parse_xpath('descendant::foo[@bar]')) end it 'parses a node test followed by a node test with a predicate' do - parse_css('foo bar[baz]').should == parse_xpath( + expect(parse_css('foo bar[baz]')).to eq(parse_xpath( 'descendant::foo/descendant::bar[@baz]' - ) + )) end it 'parses a predicate testing an attribute value' do - parse_css('foo[bar="baz"]').should == parse_xpath( + expect(parse_css('foo[bar="baz"]')).to eq(parse_xpath( 'descendant::foo[@bar="baz"]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/empty_spec.rb b/spec/oga/css/parser/pseudo_classes/empty_spec.rb index c5e5f62..d5a2d98 100644 --- a/spec/oga/css/parser/pseudo_classes/empty_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/empty_spec.rb @@ -3,7 +3,7 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':empty pseudo class' do it 'parses the :empty pseudo class' do - parse_css(':empty').should == parse_xpath('descendant::*[not(node())]') + expect(parse_css(':empty')).to eq(parse_xpath('descendant::*[not(node())]')) end end end diff --git a/spec/oga/css/parser/pseudo_classes/first_child_spec.rb b/spec/oga/css/parser/pseudo_classes/first_child_spec.rb index c878907..b801f02 100644 --- a/spec/oga/css/parser/pseudo_classes/first_child_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/first_child_spec.rb @@ -3,9 +3,9 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':first-child pseudo class' do it 'parses the :first-child pseudo class' do - parse_css(':first-child').should == parse_xpath( + expect(parse_css(':first-child')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/first_of_type_spec.rb b/spec/oga/css/parser/pseudo_classes/first_of_type_spec.rb index fb0225b..f91f8da 100644 --- a/spec/oga/css/parser/pseudo_classes/first_of_type_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/first_of_type_spec.rb @@ -3,15 +3,15 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':first-of-type pseudo class' do it 'parses the :first-of-type pseudo class' do - parse_css(':first-of-type').should == parse_xpath( + expect(parse_css(':first-of-type')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 0]' - ) + )) end it 'parses the a:first-of-type pseudo class' do - parse_css('a:first-of-type').should == parse_xpath( + expect(parse_css('a:first-of-type')).to eq(parse_xpath( 'descendant::a[count(preceding-sibling::a) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/last_child_spec.rb b/spec/oga/css/parser/pseudo_classes/last_child_spec.rb index 8201c31..3c0cdb0 100644 --- a/spec/oga/css/parser/pseudo_classes/last_child_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/last_child_spec.rb @@ -3,9 +3,9 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':last-child pseudo class' do it 'parses the :last-child pseudo class' do - parse_css(':last-child').should == parse_xpath( + expect(parse_css(':last-child')).to eq(parse_xpath( 'descendant::*[count(following-sibling::*) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/last_of_type_spec.rb b/spec/oga/css/parser/pseudo_classes/last_of_type_spec.rb index f38ed62..585f6b9 100644 --- a/spec/oga/css/parser/pseudo_classes/last_of_type_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/last_of_type_spec.rb @@ -3,15 +3,15 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':last-of-type pseudo class' do it 'parses the :last-of-type pseudo class' do - parse_css(':last-of-type').should == parse_xpath( + expect(parse_css(':last-of-type')).to eq(parse_xpath( 'descendant::*[count(following-sibling::*) = 0]' - ) + )) end it 'parses the a:last-of-type pseudo class' do - parse_css('a:last-of-type').should == parse_xpath( + expect(parse_css('a:last-of-type')).to eq(parse_xpath( 'descendant::a[count(following-sibling::a) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/not_spec.rb b/spec/oga/css/parser/pseudo_classes/not_spec.rb index 79871fb..e3b9945 100644 --- a/spec/oga/css/parser/pseudo_classes/not_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/not_spec.rb @@ -3,16 +3,17 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':not pseudo class' do it 'parses the :not(x) pseudo class' do - parse_css(':not(x)').should == parse_xpath('descendant::*[not(self::x)]') + expect(parse_css(':not(x)')).to eq(parse_xpath('descendant::*[not(self::x)]')) end it 'parses the x:not(y) pseudo class' do - parse_css('x:not(y)').should == parse_xpath('descendant::x[not(self::y)]') + expect(parse_css('x:not(y)')).to eq(parse_xpath('descendant::x[not(self::y)]')) end it 'parses the x:not(#foo) pseudo class' do - parse_css('x:not(#foo)').should == + expect(parse_css('x:not(#foo)')).to eq( parse_xpath('descendant::x[not(@id="foo")]') + ) end end end diff --git a/spec/oga/css/parser/pseudo_classes/nth_child_spec.rb b/spec/oga/css/parser/pseudo_classes/nth_child_spec.rb index ce20be4..839e4ca 100644 --- a/spec/oga/css/parser/pseudo_classes/nth_child_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/nth_child_spec.rb @@ -3,92 +3,92 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':nth-child pseudo class' do it 'parses the x:nth-child(1) pseudo class' do - parse_css('x:nth-child(1)').should == parse_xpath( + expect(parse_css('x:nth-child(1)')).to eq(parse_xpath( 'descendant::x[count(preceding-sibling::*) = 0]' - ) + )) end it 'parses the :nth-child(1) pseudo class' do - parse_css(':nth-child(1)').should == parse_xpath( + expect(parse_css(':nth-child(1)')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 0]' - ) + )) end it 'parses the :nth-child(2) pseudo class' do - parse_css(':nth-child(2)').should == parse_xpath( + expect(parse_css(':nth-child(2)')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 1]' - ) + )) end it 'parses the x:nth-child(even) pseudo class' do - parse_css('x:nth-child(even)').should == parse_xpath( + expect(parse_css('x:nth-child(even)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::*) + 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-child(odd) pseudo class' do - parse_css('x:nth-child(odd)').should == parse_xpath( + expect(parse_css('x:nth-child(odd)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::*) + 1) >= 1 ' \ 'and (((count(preceding-sibling::*) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-child(n) pseudo class' do - parse_css('x:nth-child(n)').should == parse_xpath( + expect(parse_css('x:nth-child(n)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::*) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-child(-n) pseudo class' do - parse_css('x:nth-child(-n)').should == parse_xpath( + expect(parse_css('x:nth-child(-n)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::*) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-child(-n+6) pseudo class' do - parse_css('x:nth-child(-n+6)').should == parse_xpath( + expect(parse_css('x:nth-child(-n+6)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::*) + 1) <= 6) ' \ 'and (((count(preceding-sibling::*) + 1) - 6) mod 1) = 0]' - ) + )) end it 'parses the x:nth-child(n+5) pseudo class' do - parse_css('x:nth-child(n+5)').should == parse_xpath( + expect(parse_css('x:nth-child(n+5)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::*) + 1) >= 5 ' \ 'and (((count(preceding-sibling::*) + 1) - 5) mod 1) = 0]' - ) + )) end it 'parses the x:nth-child(2n) pseudo class' do - parse_css('x:nth-child(2n)').should == parse_css('x:nth-child(even)') + expect(parse_css('x:nth-child(2n)')).to eq(parse_css('x:nth-child(even)')) end it 'parses the x:nth-child(2n+1) pseudo class' do - parse_css('x:nth-child(2n+1)').should == parse_xpath( + expect(parse_css('x:nth-child(2n+1)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::*) + 1) >= 1 ' \ 'and (((count(preceding-sibling::*) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-child(3n+1) pseudo class' do - parse_css('x:nth-child(3n+1)').should == parse_xpath( + expect(parse_css('x:nth-child(3n+1)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::*) + 1) >= 1 ' \ 'and (((count(preceding-sibling::*) + 1) - 1) mod 3) = 0]' - ) + )) end it 'parses the x:nth-child(2n-6) pseudo class' do - parse_css('x:nth-child(2n-6)').should == parse_xpath( + expect(parse_css('x:nth-child(2n-6)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::*) + 1) >= 2 ' \ 'and (((count(preceding-sibling::*) + 1) - 2) mod 2) = 0]' - ) + )) end it 'parses the x:nth-child(-2n+6) pseudo class' do - parse_css('x:nth-child(-2n+6)').should == parse_xpath( + expect(parse_css('x:nth-child(-2n+6)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::*) + 1) <= 6) ' \ 'and (((count(preceding-sibling::*) + 1) - 6) mod 2) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/nth_last_child_spec.rb b/spec/oga/css/parser/pseudo_classes/nth_last_child_spec.rb index e9aeaa6..6af7127 100644 --- a/spec/oga/css/parser/pseudo_classes/nth_last_child_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/nth_last_child_spec.rb @@ -3,87 +3,87 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':nth-last-child pseudo class' do it 'parses the x:nth-last-child(1) pseudo class' do - parse_css('x:nth-last-child(1)').should == parse_xpath( + expect(parse_css('x:nth-last-child(1)')).to eq(parse_xpath( 'descendant::x[count(following-sibling::*) = 0]' - ) + )) end it 'parses the :nth-last-child(1) pseudo class' do - parse_css(':nth-last-child(1)').should == parse_xpath( + expect(parse_css(':nth-last-child(1)')).to eq(parse_xpath( 'descendant::*[count(following-sibling::*) = 0]' - ) + )) end it 'parses the :nth-last-child(2) pseudo class' do - parse_css(':nth-last-child(2)').should == parse_xpath( + expect(parse_css(':nth-last-child(2)')).to eq(parse_xpath( 'descendant::*[count(following-sibling::*) = 1]' - ) + )) end it 'parses the x:nth-last-child(even) pseudo class' do - parse_css('x:nth-last-child(even)').should == parse_xpath( + expect(parse_css('x:nth-last-child(even)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::*) + 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-child(odd) pseudo class' do - parse_css('x:nth-last-child(odd)').should == parse_xpath( + expect(parse_css('x:nth-last-child(odd)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::*) + 1) >= 1 ' \ 'and (((count(following-sibling::*) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-child(n) pseudo class' do - parse_css('x:nth-last-child(n)').should == parse_xpath( + expect(parse_css('x:nth-last-child(n)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::*) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-last-child(-n) pseudo class' do - parse_css('x:nth-last-child(-n)').should == parse_xpath( + expect(parse_css('x:nth-last-child(-n)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::*) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-last-child(-n+6) pseudo class' do - parse_css('x:nth-last-child(-n+6)').should == parse_xpath( + expect(parse_css('x:nth-last-child(-n+6)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::*) + 1) <= 6) ' \ 'and (((count(following-sibling::*) + 1) - 6) mod 1) = 0]' - ) + )) end it 'parses the x:nth-last-child(2n) pseudo class' do - parse_css('x:nth-last-child(2n)').should == parse_css( + expect(parse_css('x:nth-last-child(2n)')).to eq(parse_css( 'x:nth-last-child(even)' - ) + )) end it 'parses the x:nth-last-child(2n+1) pseudo class' do - parse_css('x:nth-last-child(2n+1)').should == parse_xpath( + expect(parse_css('x:nth-last-child(2n+1)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::*) + 1) >= 1 ' \ 'and (((count(following-sibling::*) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-child(2n-6) pseudo class' do - parse_css('x:nth-last-child(2n-6)').should == parse_xpath( + expect(parse_css('x:nth-last-child(2n-6)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::*) + 1) >= 2 ' \ 'and (((count(following-sibling::*) + 1) - 2) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-child(-2n-6) pseudo class' do - parse_css('x:nth-last-child(-2n-6)').should == parse_xpath( + expect(parse_css('x:nth-last-child(-2n-6)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::*) + 1) <= -2) ' \ 'and (((count(following-sibling::*) + 1) - -2) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-child(-2n+6) pseudo class' do - parse_css('x:nth-last-child(-2n+6)').should == parse_xpath( + expect(parse_css('x:nth-last-child(-2n+6)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::*) + 1) <= 6) ' \ 'and (((count(following-sibling::*) + 1) - 6) mod 2) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/nth_last_of_type_spec.rb b/spec/oga/css/parser/pseudo_classes/nth_last_of_type_spec.rb index 22f3d3d..34c7a16 100644 --- a/spec/oga/css/parser/pseudo_classes/nth_last_of_type_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/nth_last_of_type_spec.rb @@ -3,93 +3,93 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':nth-last-of-type pseudo class' do it 'parses the x:nth-last-of-type(1) pseudo class' do - parse_css('x:nth-last-of-type(1)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(1)')).to eq(parse_xpath( 'descendant::x[count(following-sibling::x) = 0]' - ) + )) end it 'parses the :nth-last-of-type(1) pseudo class' do - parse_css(':nth-last-of-type(1)').should == parse_xpath( + expect(parse_css(':nth-last-of-type(1)')).to eq(parse_xpath( 'descendant::*[count(following-sibling::*) = 0]' - ) + )) end it 'parses the :nth-last-of-type(2) pseudo class' do - parse_css(':nth-last-of-type(2)').should == parse_xpath( + expect(parse_css(':nth-last-of-type(2)')).to eq(parse_xpath( 'descendant::*[count(following-sibling::*) = 1]' - ) + )) end it 'parses the x:nth-last-of-type(even) pseudo class' do - parse_css('x:nth-last-of-type(even)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(even)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::x) + 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(odd) pseudo class' do - parse_css('x:nth-last-of-type(odd)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(odd)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::x) + 1) >= 1 ' \ 'and (((count(following-sibling::x) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(n) pseudo class' do - parse_css('x:nth-last-of-type(n)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(n)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::x) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(-n) pseudo class' do - parse_css('x:nth-last-of-type(-n)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(-n)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::x) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(-n+6) pseudo class' do - parse_css('x:nth-last-of-type(-n+6)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(-n+6)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::x) + 1) <= 6) ' \ 'and (((count(following-sibling::x) + 1) - 6) mod 1) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(n+5) pseudo class' do - parse_css('x:nth-last-of-type(n+5)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(n+5)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::x) + 1) >= 5 ' \ 'and (((count(following-sibling::x) + 1) - 5) mod 1) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(2n) pseudo class' do - parse_css('x:nth-last-of-type(2n)') - .should == parse_css('x:nth-last-of-type(even)') + expect(parse_css('x:nth-last-of-type(2n)')) + .to eq(parse_css('x:nth-last-of-type(even)')) end it 'parses the x:nth-last-of-type(2n+1) pseudo class' do - parse_css('x:nth-last-of-type(2n+1)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(2n+1)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::x) + 1) >= 1 ' \ 'and (((count(following-sibling::x) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(3n+1) pseudo class' do - parse_css('x:nth-last-of-type(3n+1)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(3n+1)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::x) + 1) >= 1 ' \ 'and (((count(following-sibling::x) + 1) - 1) mod 3) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(2n-6) pseudo class' do - parse_css('x:nth-last-of-type(2n-6)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(2n-6)')).to eq(parse_xpath( 'descendant::x[(count(following-sibling::x) + 1) >= 2 ' \ 'and (((count(following-sibling::x) + 1) - 2) mod 2) = 0]' - ) + )) end it 'parses the x:nth-last-of-type(-2n+6) pseudo class' do - parse_css('x:nth-last-of-type(-2n+6)').should == parse_xpath( + expect(parse_css('x:nth-last-of-type(-2n+6)')).to eq(parse_xpath( 'descendant::x[((count(following-sibling::x) + 1) <= 6) ' \ 'and (((count(following-sibling::x) + 1) - 6) mod 2) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/nth_of_type_spec.rb b/spec/oga/css/parser/pseudo_classes/nth_of_type_spec.rb index 7443be8..9fb20d1 100644 --- a/spec/oga/css/parser/pseudo_classes/nth_of_type_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/nth_of_type_spec.rb @@ -3,92 +3,92 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':nth-of-type pseudo class' do it 'parses the x:nth-of-type(1) pseudo class' do - parse_css('x:nth-of-type(1)').should == parse_xpath( + expect(parse_css('x:nth-of-type(1)')).to eq(parse_xpath( 'descendant::x[count(preceding-sibling::x) = 0]' - ) + )) end it 'parses the :nth-of-type(1) pseudo class' do - parse_css(':nth-of-type(1)').should == parse_xpath( + expect(parse_css(':nth-of-type(1)')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 0]' - ) + )) end it 'parses the :nth-of-type(2) pseudo class' do - parse_css(':nth-of-type(2)').should == parse_xpath( + expect(parse_css(':nth-of-type(2)')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 1]' - ) + )) end it 'parses the x:nth-of-type(even) pseudo class' do - parse_css('x:nth-of-type(even)').should == parse_xpath( + expect(parse_css('x:nth-of-type(even)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::x) + 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-of-type(odd) pseudo class' do - parse_css('x:nth-of-type(odd)').should == parse_xpath( + expect(parse_css('x:nth-of-type(odd)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::x) + 1) >= 1 ' \ 'and (((count(preceding-sibling::x) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-of-type(n) pseudo class' do - parse_css('x:nth-of-type(n)').should == parse_xpath( + expect(parse_css('x:nth-of-type(n)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::x) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-of-type(-n) pseudo class' do - parse_css('x:nth-of-type(-n)').should == parse_xpath( + expect(parse_css('x:nth-of-type(-n)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::x) + 1) mod 1) = 0]' - ) + )) end it 'parses the x:nth-of-type(-n+6) pseudo class' do - parse_css('x:nth-of-type(-n+6)').should == parse_xpath( + expect(parse_css('x:nth-of-type(-n+6)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::x) + 1) <= 6) ' \ 'and (((count(preceding-sibling::x) + 1) - 6) mod 1) = 0]' - ) + )) end it 'parses the x:nth-of-type(n+5) pseudo class' do - parse_css('x:nth-of-type(n+5)').should == parse_xpath( + expect(parse_css('x:nth-of-type(n+5)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::x) + 1) >= 5 ' \ 'and (((count(preceding-sibling::x) + 1) - 5) mod 1) = 0]' - ) + )) end it 'parses the x:nth-of-type(2n) pseudo class' do - parse_css('x:nth-of-type(2n)').should == parse_css('x:nth-of-type(even)') + expect(parse_css('x:nth-of-type(2n)')).to eq(parse_css('x:nth-of-type(even)')) end it 'parses the x:nth-of-type(2n+1) pseudo class' do - parse_css('x:nth-of-type(2n+1)').should == parse_xpath( + expect(parse_css('x:nth-of-type(2n+1)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::x) + 1) >= 1 ' \ 'and (((count(preceding-sibling::x) + 1) - 1) mod 2) = 0]' - ) + )) end it 'parses the x:nth-of-type(3n+1) pseudo class' do - parse_css('x:nth-of-type(3n+1)').should == parse_xpath( + expect(parse_css('x:nth-of-type(3n+1)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::x) + 1) >= 1 ' \ 'and (((count(preceding-sibling::x) + 1) - 1) mod 3) = 0]' - ) + )) end it 'parses the x:nth-of-type(2n-6) pseudo class' do - parse_css('x:nth-of-type(2n-6)').should == parse_xpath( + expect(parse_css('x:nth-of-type(2n-6)')).to eq(parse_xpath( 'descendant::x[(count(preceding-sibling::x) + 1) >= 2 ' \ 'and (((count(preceding-sibling::x) + 1) - 2) mod 2) = 0]' - ) + )) end it 'parses the x:nth-of-type(-2n+6) pseudo class' do - parse_css('x:nth-of-type(-2n+6)').should == parse_xpath( + expect(parse_css('x:nth-of-type(-2n+6)')).to eq(parse_xpath( 'descendant::x[((count(preceding-sibling::x) + 1) <= 6) ' \ 'and (((count(preceding-sibling::x) + 1) - 6) mod 2) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/nth_spec.rb b/spec/oga/css/parser/pseudo_classes/nth_spec.rb index 2e42020..2635e1a 100644 --- a/spec/oga/css/parser/pseudo_classes/nth_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/nth_spec.rb @@ -3,13 +3,13 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':nth pseudo class' do it 'parses the :nth(1) pseudo class' do - parse_css(':nth(1)') - .should == parse_xpath('descendant::*[position() = 1]') + expect(parse_css(':nth(1)')) + .to eq(parse_xpath('descendant::*[position() = 1]')) end it 'parses the :nth(2) pseudo class' do - parse_css(':nth(2)') - .should == parse_xpath('descendant::*[position() = 2]') + expect(parse_css(':nth(2)')) + .to eq(parse_xpath('descendant::*[position() = 2]')) end end end diff --git a/spec/oga/css/parser/pseudo_classes/only_child_spec.rb b/spec/oga/css/parser/pseudo_classes/only_child_spec.rb index 086629f..12333c8 100644 --- a/spec/oga/css/parser/pseudo_classes/only_child_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/only_child_spec.rb @@ -3,10 +3,10 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':only-child pseudo class' do it 'parses the :only-child pseudo class' do - parse_css(':only-child').should == parse_xpath( + expect(parse_css(':only-child')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 0 ' \ 'and count(following-sibling::*) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/only_of_type_spec.rb b/spec/oga/css/parser/pseudo_classes/only_of_type_spec.rb index b2384ff..c075cf2 100644 --- a/spec/oga/css/parser/pseudo_classes/only_of_type_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/only_of_type_spec.rb @@ -3,17 +3,17 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':only-of-type pseudo class' do it 'parses the :only-of-type pseudo class' do - parse_css(':only-of-type').should == parse_xpath( + expect(parse_css(':only-of-type')).to eq(parse_xpath( 'descendant::*[count(preceding-sibling::*) = 0 and ' \ 'count(following-sibling::*) = 0]' - ) + )) end it 'parses the a:only-of-type pseudo class' do - parse_css('a:only-of-type').should == parse_xpath( + expect(parse_css('a:only-of-type')).to eq(parse_xpath( 'descendant::a[count(preceding-sibling::a) = 0 and ' \ 'count(following-sibling::a) = 0]' - ) + )) end end end diff --git a/spec/oga/css/parser/pseudo_classes/root_spec.rb b/spec/oga/css/parser/pseudo_classes/root_spec.rb index fb56800..9be97a5 100644 --- a/spec/oga/css/parser/pseudo_classes/root_spec.rb +++ b/spec/oga/css/parser/pseudo_classes/root_spec.rb @@ -3,11 +3,11 @@ require 'spec_helper' describe Oga::CSS::Parser do describe ':root pseudo class' do it 'parses the x:root pseudo class' do - parse_css('x:root').should == parse_xpath('descendant::x[not(parent::*)]') + expect(parse_css('x:root')).to eq(parse_xpath('descendant::x[not(parent::*)]')) end it 'parses the :root pseudo class' do - parse_css(':root').should == parse_xpath('descendant::*[not(parent::*)]') + expect(parse_css(':root')).to eq(parse_xpath('descendant::*[not(parent::*)]')) end end end diff --git a/spec/oga/css/parser/wildcards_spec.rb b/spec/oga/css/parser/wildcards_spec.rb index 2f0238b..e562e81 100644 --- a/spec/oga/css/parser/wildcards_spec.rb +++ b/spec/oga/css/parser/wildcards_spec.rb @@ -3,15 +3,15 @@ require 'spec_helper' describe Oga::CSS::Parser do describe 'wildcards' do it 'parses a wildcard name test' do - parse_css('*').should == parse_xpath('descendant::*') + expect(parse_css('*')).to eq(parse_xpath('descendant::*')) end it 'parses a wildcard namespace test' do - parse_css('*|foo').should == parse_xpath('descendant::*:foo') + expect(parse_css('*|foo')).to eq(parse_xpath('descendant::*:foo')) end it 'parses a wildcard namespace and name test' do - parse_css('*|*').should == parse_xpath('descendant::*:*') + expect(parse_css('*|*')).to eq(parse_xpath('descendant::*:*')) end end end diff --git a/spec/oga/entity_decoder_spec.rb b/spec/oga/entity_decoder_spec.rb index 1ba1be2..94c41fd 100644 --- a/spec/oga/entity_decoder_spec.rb +++ b/spec/oga/entity_decoder_spec.rb @@ -3,29 +3,29 @@ require 'spec_helper' describe Oga::EntityDecoder do describe 'try_decode' do it 'returns nil if the input is also nil' do - described_class.try_decode(nil).should be_nil + expect(described_class.try_decode(nil)).to be_nil end it 'decodes XML entities' do - described_class.try_decode('<') - .should == Oga::XML::Entities::DECODE_MAPPING['<'] + expect(described_class.try_decode('<')) + .to eq(Oga::XML::Entities::DECODE_MAPPING['<']) end it 'decodes HTML entities' do - described_class.try_decode('©', true) - .should == Oga::HTML::Entities::DECODE_MAPPING['©'] + expect(described_class.try_decode('©', true)) + .to eq(Oga::HTML::Entities::DECODE_MAPPING['©']) end end describe 'decode' do it 'decodes XML entities' do - described_class.decode('<') - .should == Oga::XML::Entities::DECODE_MAPPING['<'] + expect(described_class.decode('<')) + .to eq(Oga::XML::Entities::DECODE_MAPPING['<']) end it 'decodes HTML entities' do - described_class.decode('©', true) - .should == Oga::HTML::Entities::DECODE_MAPPING['©'] + expect(described_class.decode('©', true)) + .to eq(Oga::HTML::Entities::DECODE_MAPPING['©']) end end end diff --git a/spec/oga/html/entities_spec.rb b/spec/oga/html/entities_spec.rb index b036c0f..af4d68d 100644 --- a/spec/oga/html/entities_spec.rb +++ b/spec/oga/html/entities_spec.rb @@ -5,15 +5,15 @@ require 'spec_helper' describe Oga::HTML::Entities do describe 'decode' do it 'decodes & into &' do - described_class.decode('&').should == '&' + expect(described_class.decode('&')).to eq('&') end it 'decodes λ into λ' do - described_class.decode('λ').should == 'λ' + expect(described_class.decode('λ')).to eq('λ') end it 'decodes ½ into ½' do - described_class.decode('½').should == '½' + expect(described_class.decode('½')).to eq('½') end end end diff --git a/spec/oga/html/lexer/attributes_spec.rb b/spec/oga/html/lexer/attributes_spec.rb index 7773dd6..dc44279 100644 --- a/spec/oga/html/lexer/attributes_spec.rb +++ b/spec/oga/html/lexer/attributes_spec.rb @@ -3,18 +3,18 @@ require 'spec_helper' describe Oga::XML::Lexer do describe 'HTML attributes' do it 'lexes an attribute with an unquoted value' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'a', 1], [:T_ATTR, 'href', 1], [:T_STRING_SQUOTE, nil, 1], [:T_STRING_BODY, 'foo', 1], [:T_STRING_SQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an attribute with an unquoted value containing a space' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'a', 1], [:T_ATTR, 'href', 1], [:T_STRING_SQUOTE, nil, 1], @@ -22,55 +22,55 @@ describe Oga::XML::Lexer do [:T_STRING_SQUOTE, nil, 1], [:T_ATTR, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an attribute with an unquoted value containing an underscore' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'a', 1], [:T_ATTR, 'href', 1], [:T_STRING_SQUOTE, nil, 1], [:T_STRING_BODY, 'foo_bar', 1], [:T_STRING_SQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an attribute with an unquoted value containing a dash' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'a', 1], [:T_ATTR, 'href', 1], [:T_STRING_SQUOTE, nil, 1], [:T_STRING_BODY, 'foo-bar', 1], [:T_STRING_SQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an attribute with an unquoted value containing a slash' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'a', 1], [:T_ATTR, 'href', 1], [:T_STRING_SQUOTE, nil, 1], [:T_STRING_BODY, 'foo/', 1], [:T_STRING_SQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an attribute with an unquoted chunk of Javascript' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'a', 1], [:T_ATTR, 'href', 1], [:T_STRING_SQUOTE, nil, 1], [:T_STRING_BODY, 'foo"', 1], [:T_STRING_SQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an attribute with a value without a starting single quote' do - lex_html("").should == [ + expect(lex_html("")).to eq([ [:T_ELEM_NAME, 'a', 1], [:T_ATTR, 'href', 1], [:T_STRING_SQUOTE, nil, 1], [:T_STRING_BODY, "foo'", 1], [:T_STRING_SQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an element with spaces around the attribute equal sign' do - lex_html('

').should == [ + expect(lex_html('

')).to eq([ [:T_ELEM_NAME, 'p', 1], [:T_ATTR, 'foo', 1], [:T_STRING_DQUOTE, nil, 1], [:T_STRING_BODY, 'bar', 1], [:T_STRING_DQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an element with a newline following the equals sign' do - lex_html(%Q{

}).should == [ + expect(lex_html(%Q{

})).to eq([ [:T_ELEM_NAME, 'p', 1], [:T_ATTR, 'foo', 1], [:T_STRING_DQUOTE, nil, 2], [:T_STRING_BODY, 'bar', 2], [:T_STRING_DQUOTE, nil, 2], [:T_ELEM_END, nil, 2] - ] + ]) end it 'lexes an element with a newline following the equals sign using an IO as input' do - lex_stringio(%Q{

}, :html => true).should == [ + expect(lex_stringio(%Q{

}, :html => true)).to eq([ [:T_ELEM_NAME, 'p', 1], [:T_ATTR, 'foo', 1], [:T_STRING_DQUOTE, nil, 2], [:T_STRING_BODY, 'bar', 2], [:T_STRING_DQUOTE, nil, 2], [:T_ELEM_END, nil, 2] - ] + ]) end it 'lexes an element containing a namespaced attribute' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'foo', 1], [:T_ATTR, 'bar:baz', 1], [:T_STRING_DQUOTE, nil, 1], [:T_STRING_BODY, '10', 1], [:T_STRING_DQUOTE, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end end end diff --git a/spec/oga/html/lexer/closing_mismatch_spec.rb b/spec/oga/html/lexer/closing_mismatch_spec.rb index 5cabc4e..bef74ea 100644 --- a/spec/oga/html/lexer/closing_mismatch_spec.rb +++ b/spec/oga/html/lexer/closing_mismatch_spec.rb @@ -3,22 +3,22 @@ require 'spec_helper' describe Oga::XML::Lexer do describe 'closing HTML elements with mismatched closing tags' do it 'lexes a

element closed using a element' do - lex_html('

foo').should == [ + expect(lex_html('

foo')).to eq([ [:T_ELEM_NAME, 'p', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes a element' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'object', 1], [:T_ELEM_NAME, 'param', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'param', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end end end diff --git a/spec/oga/html/lexer/closing_rules/body_spec.rb b/spec/oga/html/lexer/closing_rules/body_spec.rb index c732205..e565438 100644 --- a/spec/oga/html/lexer/closing_rules/body_spec.rb +++ b/spec/oga/html/lexer/closing_rules/body_spec.rb @@ -3,35 +3,35 @@ require 'spec_helper' describe Oga::XML::Lexer do describe 'using HTML elements' do it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'body', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'head', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'body', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'body', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes a

following an unclosed as a child element' do - lex_html('

foo').should == [ + expect(lex_html('

foo')).to eq([ [:T_ELEM_NAME, 'body', 1], [:T_ELEM_NAME, 'p', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end end end diff --git a/spec/oga/html/lexer/closing_rules/caption_spec.rb b/spec/oga/html/lexer/closing_rules/caption_spec.rb index 037cabf..9428d2d 100644 --- a/spec/oga/html/lexer/closing_rules/caption_spec.rb +++ b/spec/oga/html/lexer/closing_rules/caption_spec.rb @@ -3,79 +3,79 @@ require 'spec_helper' describe Oga::XML::Lexer do describe 'using HTML elements' do it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'thead', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'tbody', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'tfoot', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'tr', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an unclosed followed by a as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'colgroup', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes an unclosed followed by a as separate elements' do - lex_html('foo').should == [ + expect(lex_html('foo')).to eq([ [:T_ELEM_NAME, 'caption', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'col', 1], [:T_ELEM_END, nil, 1] - ] + ]) end end end diff --git a/spec/oga/html/lexer/closing_rules/colgroup_spec.rb b/spec/oga/html/lexer/closing_rules/colgroup_spec.rb index cc0bf41..0626fad 100644 --- a/spec/oga/html/lexer/closing_rules/colgroup_spec.rb +++ b/spec/oga/html/lexer/closing_rules/colgroup_spec.rb @@ -3,32 +3,32 @@ require 'spec_helper' describe Oga::XML::Lexer do describe 'using HTML elements' do it 'lexes two unclosed elements as separate elements' do - lex_html('foobar').should == [ + expect(lex_html('foobar')).to eq([ [:T_ELEM_NAME, 'colgroup', 1], [:T_TEXT, 'foo', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_NAME, 'colgroup', 1], [:T_TEXT, 'bar', 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes a element following a as a child element' do - lex_html('').should == [ + expect(lex_html('')).to eq([ [:T_ELEM_NAME, 'colgroup', 1], [:T_ELEM_NAME, 'col', 1], [:T_ELEM_END, nil, 1], [:T_ELEM_END, nil, 1] - ] + ]) end it 'lexes a