Bladeren bron

Fixed a bit how RC is built

Emmanuel Peroumalnaik 11 jaren geleden
bovenliggende
commit
a5b6420f1f
4 gewijzigde bestanden met toevoegingen van 17 en 12 verwijderingen
  1. 1 1
      lib/Selenium/Remote/Driver.pm
  2. 3 1
      lib/Selenium/Remote/RemoteConnection.pm
  3. 3 10
      t/01-driver.t
  4. 10 0
      t/lib/MockRemoteConnection.pm

+ 1 - 1
lib/Selenium/Remote/Driver.pm

@@ -538,7 +538,7 @@ sub new_desired_session {
 
 sub _request_new_session {
     my ( $self, $args ) = @_;
-
+    $self->remote_conn->check_status();
     # command => 'newSession' to fool the tests of commands implemented
     # TODO: rewrite the testing better, this is so fragile.
     my $resource_new_session = { 

+ 3 - 1
lib/Selenium/Remote/RemoteConnection.pm

@@ -31,7 +31,7 @@ has 'ua' => (
     builder => sub { return LWP::UserAgent->new; }
 );
 
-sub BUILD {
+sub check_status { 
     my $self = shift;
     my $status;
     try {
@@ -50,9 +50,11 @@ sub BUILD {
     unless ($status->{cmd_status} eq 'OK') {
         croak "Selenium server did not return proper status";
     }
+    
 }
 
 
+
 # This request method is tailored for Selenium RC server
 sub request {
     my ($self,$resource,$params,$dont_process_response) = @_;

+ 3 - 10
t/01-driver.t

@@ -9,9 +9,9 @@ use LWP::Protocol::PSGI;
 use LWP::UserAgent;
 use Test::LWP::UserAgent;
 use Selenium::Remote::Driver;
-    use lib 't/lib';
-    use MockCommands; 
-    use MockRemoteConnection;
+use lib 't/lib';
+use MockCommands; 
+use MockRemoteConnection;
 
 BEGIN {
     if (defined $ENV{'WD_MOCKING_RECORD'} && ($ENV{'WD_MOCKING_RECORD'}==1)) {
@@ -39,13 +39,6 @@ t::lib::MockSeleniumWebDriver::register($record,"t/mock-recordings/$mock_file");
 
 my $driver = Selenium::Remote::Driver->new(
     browser_name => 'firefox',
-    remote_conn  => MockRemoteConnection->new(
-        spec               => {},
-        record             => 1,
-        remote_server_addr => 'localhost',
-        port               => 4444,
-        ua                 => LWP::UserAgent->new
-    )
 );
 my $website = 'http://localhost:63636';
 my $ret;

+ 10 - 0
t/lib/MockRemoteConnection.pm

@@ -45,6 +45,16 @@ has 'session_id' => (
     default => sub { undef },
 );
 
+sub BUILD {
+    my $self = shift; 
+    $self->remote_server_addr('localhost');
+    $self->port('4444');
+}
+
+sub check_status { 
+    return;
+}
+
 sub dump_session_store { 
     my $self = shift; 
     my ($file,$session_id) = @_;