extend selector tests to check negative as well as positive
Matt S Trout [Fri, 28 May 2010 10:35:25 +0000 (11:35 +0100)]
t/selectors.t

index 59d9c7c..33e050b 100644 (file)
@@ -14,77 +14,79 @@ my $tmpl = <<END;
 </body>
 END
 
+my $stub = '<div class="waargh"></div>';
+
 # el#id
-is( HTML::Zoom->from_html('<div id="yo"></div>')
+is( HTML::Zoom->from_html('<div id="yo"></div>'.$stub)
    ->select('div#yo')
       ->replace_content('grg')
    ->to_html,
-   '<div id="yo">grg</div>',
+   '<div id="yo">grg</div>'.$stub,
    'E#id works' );
 
 # el.class1
-is( HTML::Zoom->from_html('<div class="yo"></div>')
+is( HTML::Zoom->from_html('<div class="yo"></div>'.$stub)
    ->select('div.yo')
       ->replace_content('grg')
    ->to_html,
-   '<div class="yo">grg</div>',
+   '<div class="yo">grg</div>'.$stub,
    'E.class works' );
 
 # el[attr]
-is( HTML::Zoom->from_html('<div frew="yo"></div>')
+is( HTML::Zoom->from_html('<div frew="yo"></div>'.$stub)
    ->select('div[frew]')
       ->replace_content('grg')
    ->to_html,
-   '<div frew="yo">grg</div>',
+   '<div frew="yo">grg</div>'.$stub,
    'E[attr] works' );
 
 # el[attr="foo"]
-is( HTML::Zoom->from_html('<div frew="yo"></div>')
+is( HTML::Zoom->from_html('<div frew="yo"></div>'.$stub)
    ->select('div[frew="yo"]')
       ->replace_content('grg')
    ->to_html,
-   '<div frew="yo">grg</div>',
+   '<div frew="yo">grg</div>'.$stub,
    'E[attr="val"] works' );
 
 # el[attr=foo]
-is( HTML::Zoom->from_html('<div frew="yo"></div>')
+is( HTML::Zoom->from_html('<div frew="yo"></div>'.$stub)
     ->select('div[frew=yo]')
     ->replace_content('grg')
     ->to_html,
-    '<div frew="yo">grg</div>',
+    '<div frew="yo">grg</div>'.$stub,
     'E[attr=val] works' );
  
 
 # el[attr*="foo"]
-is( HTML::Zoom->from_html('<div f="frew goog"></div>')
+is( HTML::Zoom->from_html('<div f="frew goog"></div>'.$stub)
    ->select('div[f*="oo"]')
       ->replace_content('grg')
    ->to_html,
-   '<div f="frew goog">grg</div>',
+   '<div f="frew goog">grg</div>'.$stub,
    'E[attr*="val"] works' );
 
 # el[attr^="foo"]
-is( HTML::Zoom->from_html('<div f="foobar"></div>')
+is( HTML::Zoom->from_html('<div f="foobar"></div>'.$stub)
    ->select('div[f^="foo"]')
       ->replace_content('grg')
    ->to_html,
-   '<div f="foobar">grg</div>',
+   '<div f="foobar">grg</div>'.$stub,
    'E[attr^="val"] works' );
 
 # el[attr$="foo"]
-is( HTML::Zoom->from_html('<div f="foobar"></div>')
+is( HTML::Zoom->from_html('<div f="foobar"></div>'.$stub)
    ->select('div[f$="bar"]')
       ->replace_content('grg')
    ->to_html,
-   '<div f="foobar">grg</div>',
+   '<div f="foobar">grg</div>'.$stub,
    'E[attr$="val"] works' );
 
 # el[attr*="foo"]
-is( HTML::Zoom->from_html('<div f="foo bar"></div>')
+is( HTML::Zoom->from_html('<div f="foo bar"></div>'.$stub)
    ->select('div[f*="bar"]')
       ->replace_content('grg')
    ->to_html,
-   '<div f="foo bar">grg</div>',
+   '<div f="foo bar">grg</div>'.$stub,
    'E[attr*="val"] works' );
 
 # [attr=bar]
@@ -94,6 +96,7 @@ ok( check_select( '[prop=moo]'), '[attr=bar]' );
 is( check_select('span[class=career],[prop=moo]'), 2,
     'Multiple selectors: el[attr=bar],[attr=foo]');
 
+=pod
 
 # sel1 sel2
 is( HTML::Zoom->from_html('<table><tr></tr><tr></tr></table>')
@@ -112,6 +115,8 @@ is( HTML::Zoom->from_html('<table><tr><td></td></tr><tr><td></td></tr></table>')
    '<table><tr><td>frew</td></tr><tr><td>frew</td></tr></table>',
    'sel1 sel2 sel3 works' );
 
+=cut
+
 done_testing;