George S. Baugh 5 жил өмнө
parent
commit
acbdb9df88

+ 6 - 0
t/02-webelement.t

@@ -2,6 +2,7 @@ use strict;
 use warnings;
 use warnings;
 
 
 use Test::More;
 use Test::More;
+use Test::MockModule;
 use Selenium::Remote::Driver;
 use Selenium::Remote::Driver;
 use Selenium::Remote::Mock::RemoteConnection;
 use Selenium::Remote::Mock::RemoteConnection;
 
 
@@ -46,11 +47,16 @@ INPUT: {
     ok(!$ret, 'Get attribute returns false for a missing attribute.');
     ok(!$ret, 'Get attribute returns false for a missing attribute.');
     $ret = $elem->get_tag_name();
     $ret = $elem->get_tag_name();
     is($ret, 'input', 'Get tag name');
     is($ret, 'input', 'Get tag name');
+    my $selfmock = Test::MockModule->new('Selenium::Remote::WebElement');
+    $selfmock->redefine('get_tag_name',sub { 'input' });
+    $selfmock->redefine('get_property',sub { 0 });
 
 
     $elem = $driver->find_element('checky', 'id');
     $elem = $driver->find_element('checky', 'id');
     $ret = $elem->is_selected();
     $ret = $elem->is_selected();
     is($ret, 0, 'Checkbox not selected');
     is($ret, 0, 'Checkbox not selected');
     $ret = $elem->click();
     $ret = $elem->click();
+    $selfmock->redefine('get_property',sub { 1 });
+
     $ret = $elem->is_selected();
     $ret = $elem->is_selected();
     is($ret, 1, 'Checkbox is selected');
     is($ret, 1, 'Checkbox is selected');
   TODO: {
   TODO: {