Skip to content

Commit b6192e9

Browse files
author
Polo
committed
Merge branch 'refactor-2' of github.com:Nearsoft/PHP-SeleniumClient into refactor-2
2 parents 6d19838 + ae720f6 commit b6192e9

File tree

13 files changed

+124
-123
lines changed

13 files changed

+124
-123
lines changed

SeleniumClient/Alert.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public function __construct(WebDriver $driver) { $this->_driver = $driver; }
3131
*/
3232
public function getText()
3333
{
34-
$command = new Commands\GetAlertText($this->_driver);
34+
$command = new Commands\Command($this->_driver, 'get_alert_text');
3535
$results = $command->execute();
3636
return $results['value'];
3737
}
@@ -41,7 +41,7 @@ public function getText()
4141
*/
4242
public function dismiss()
4343
{
44-
$command = new Commands\DismissAlert($this->_driver);
44+
$command = new Commands\Command($this->_driver, 'dismiss_alert');
4545
$command->execute();
4646
}
4747

@@ -50,7 +50,7 @@ public function dismiss()
5050
*/
5151
public function accept()
5252
{
53-
$command = new Commands\AcceptAlert($this->_driver);
53+
$command = new Commands\Command($this->_driver, 'accept_alert');
5454
$command->execute();
5555
}
5656

@@ -62,7 +62,7 @@ public function sendKeys($string)
6262
{
6363
if(is_string($string)){
6464
$params = array ('text' => $string);
65-
$command = new Commands\SetAlertText($this->_driver, $params);
65+
$command = new Commands\Command($this->_driver, 'set_alert_text', $params);
6666
$command->execute();
6767
}
6868
else{

SeleniumClient/Commands/Command.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,11 @@ public function getResponse() { return $this->_response; }
5151
private function setUrl()
5252
{
5353
$path = Dictionary::$commands[$this->_name]['path'];
54-
$path = str_replace(':session_id', $this->_driver->getSessionId(), $path);
54+
$path = str_replace('{session_id}', $this->_driver->getSessionId(), $path);
5555

5656
if($this->_urlParams){
5757
foreach($this->_urlParams as $param_name => $value) {
58-
$path = str_replace(":{$param_name}", $value, $path);
58+
$path = str_replace("{{$param_name}}", $value, $path);
5959
}
6060
}
6161

SeleniumClient/Commands/Dictionary.php

Lines changed: 62 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -20,73 +20,73 @@
2020
class Dictionary{
2121
public static $commands = array(
2222
'start_session' => array('http_method' => HttpClient::POST , 'path' => "session"),
23-
'get_capabilities' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id"),
24-
'quit' => array('http_method' => HttpClient::DELETE , 'path' => "session/:session_id"),
23+
'get_capabilities' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}"),
24+
'quit' => array('http_method' => HttpClient::DELETE , 'path' => "session/{session_id}"),
2525

26-
'get_url' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/url"),
27-
'get_current_url' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/url"),
26+
'get_url' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/url"),
27+
'get_current_url' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/url"),
2828

2929
'get_sessions' => array('http_method' => HttpClient::GET , 'path' => "sessions"),
3030

31-
'implicit_wait' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/timeouts/implicit_wait"),
31+
'implicit_wait' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/timeouts/implicit_wait"),
3232
'status' => array('http_method' => HttpClient::GET , 'path' => "status"),
3333

34-
'forward' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/forward"),
35-
'back' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/back"),
36-
'refresh' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/refresh"),
37-
38-
'source' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/source"),
39-
'title' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/title"),
40-
41-
'screenshot' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/screenshot"),
42-
43-
'element' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element"),
44-
'element_in_element' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element/:element_id/element"),
45-
'elements' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/elements"),
46-
'elements_in_element' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element/:element_id/elements"),
47-
'active_element' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element/active"),
48-
'element_value' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element/:element_id/value"),
49-
'element_text' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/text"),
50-
'element_tag_name' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/name"),
51-
'element_attribute' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/attribute/:attribute_name"),
52-
'element_property_name' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/css/:property_name"),
53-
'element_is_selected' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/selected"),
54-
'element_is_displayed' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/displayed"),
55-
'element_is_enabled' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/enabled"),
56-
'element_size' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/size"),
57-
'clear_element' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element/:element_id/clear"),
58-
'click_element' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element/:element_id/click"),
59-
'element_submit' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/element/:element_id/submit"),
60-
'describe_element' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id"),
61-
'element_location' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/location"),
62-
'element_location_view' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/location_in_view"),
63-
'compare_to_other' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/element/:element_id/equals/:element_id_compare"),
64-
65-
'load_timeout' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/timeouts"),
66-
'async_script_timeout' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/timeouts/async_script"),
67-
68-
'execute_script' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/execute"),
69-
'execute_async_script' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/execute_async"),
70-
71-
'frame' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/frame"),
72-
'window' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/window"),
73-
'window_maximize' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/window/:window_handle/maximize"),
74-
'close_window' => array('http_method' => HttpClient::DELETE , 'path' => "session/:session_id/window"),
75-
'window_handle' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/window_handle"),
76-
'window_handles' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/window_handles"),
77-
'set_window_size' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/window/:window_handle/size"),
78-
'get_window_size' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/window/:window_handle/size"),
79-
'set_window_position' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/window/:window_handle/position"),
80-
'get_window_position' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/window/:window_handle/position"),
81-
82-
'add_cookie' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/cookie"),
83-
'get_cookies' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/cookie"),
84-
'clear_cookie' => array('http_method' => HttpClient::DELETE , 'path' => "session/:session_id/cookie/:cookie_name"),
85-
'clear_cookies' => array('http_method' => HttpClient::DELETE , 'path' => "session/:session_id/cookie"),
86-
87-
'dismiss_alert' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/dismiss_alert"),
88-
'accept_alert' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/accept_alert"),
89-
'get_alert_text' => array('http_method' => HttpClient::GET , 'path' => "session/:session_id/alert_text"),
90-
'set_alert_text' => array('http_method' => HttpClient::POST , 'path' => "session/:session_id/alert_text")
34+
'forward' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/forward"),
35+
'back' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/back"),
36+
'refresh' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/refresh"),
37+
38+
'source' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/source"),
39+
'title' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/title"),
40+
41+
'screenshot' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/screenshot"),
42+
43+
'element' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element"),
44+
'element_in_element' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element/{element_id}/element"),
45+
'elements' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/elements"),
46+
'elements_in_element' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element/{element_id}/elements"),
47+
'active_element' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element/active"),
48+
'element_value' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element/{element_id}/value"),
49+
'element_text' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/text"),
50+
'element_tag_name' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/name"),
51+
'element_attribute' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/attribute/{attribute_name}"),
52+
'element_property_name' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/css/{property_name}"),
53+
'element_is_selected' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/selected"),
54+
'element_is_displayed' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/displayed"),
55+
'element_is_enabled' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/enabled"),
56+
'element_size' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/size"),
57+
'clear_element' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element/{element_id}/clear"),
58+
'click_element' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element/{element_id}/click"),
59+
'element_submit' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/element/{element_id}/submit"),
60+
'describe_element' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}"),
61+
'element_location' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/location"),
62+
'element_location_view' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/location_in_view"),
63+
'compare_to_other' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/element/{element_id}/equals/{element_id_compare}"),
64+
65+
'load_timeout' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/timeouts"),
66+
'async_script_timeout' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/timeouts/async_script"),
67+
68+
'execute_script' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/execute"),
69+
'execute_async_script' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/execute_async"),
70+
71+
'frame' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/frame"),
72+
'window' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/window"),
73+
'window_maximize' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/window/{window_handle}/maximize"),
74+
'close_window' => array('http_method' => HttpClient::DELETE , 'path' => "session/{session_id}/window"),
75+
'window_handle' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/window_handle"),
76+
'window_handles' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/window_handles"),
77+
'set_window_size' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/window/{window_handle}/size"),
78+
'get_window_size' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/window/{window_handle}/size"),
79+
'set_window_position' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/window/{window_handle}/position"),
80+
'get_window_position' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/window/{window_handle}/position"),
81+
82+
'add_cookie' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/cookie"),
83+
'get_cookies' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/cookie"),
84+
'clear_cookie' => array('http_method' => HttpClient::DELETE , 'path' => "session/{session_id}/cookie/{cookie_name}"),
85+
'clear_cookies' => array('http_method' => HttpClient::DELETE , 'path' => "session/{session_id}/cookie"),
86+
87+
'dismiss_alert' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/dismiss_alert"),
88+
'accept_alert' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/accept_alert"),
89+
'get_alert_text' => array('http_method' => HttpClient::GET , 'path' => "session/{session_id}/alert_text"),
90+
'set_alert_text' => array('http_method' => HttpClient::POST , 'path' => "session/{session_id}/alert_text")
9191
);
9292
}

SeleniumClient/Http/HttpClient.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public function execute(\SeleniumClient\Commands\Command $command, $trace = fals
6868
$responseBody = json_decode($rawResponse, true);
6969

7070
$responseHeaders=curl_getinfo($curl);
71-
71+
7272
if ($this->_traceAll || $trace)
7373
{
7474
echo "\n***********************************************************************\n";

SeleniumClient/Http/SeleniumAdapter.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@
2020

2121
class SeleniumAdapter extends HttpClient
2222
{
23-
public function execute(\SeleniumClient\Commands\Command $command)
23+
public function execute(\SeleniumClient\Commands\Command $command, $trace = null)
2424
{
25-
$response = parent::execute($command);
25+
$response = parent::execute($command, $trace);
2626
$this->validateSeleniumResponseCode($response,$command->getPolling());
2727
$this->validateHttpCode($response,$command->getPolling());
2828
return $response;

SeleniumClient/Navigation.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public function __construct(WebDriver $driver)
2929
*/
3030
public function back()
3131
{
32-
$command = new Commands\Back($this->_driver);
32+
$command = new Commands\Command($this->_driver, 'back');
3333
$command->execute();
3434
}
3535

@@ -38,7 +38,7 @@ public function back()
3838
*/
3939
public function forward()
4040
{
41-
$command = new Commands\Forward($this->_driver);
41+
$command = new Commands\Command($this->_driver, 'forward');
4242
$command->execute();
4343
}
4444

@@ -47,7 +47,7 @@ public function forward()
4747
*/
4848
public function refresh()
4949
{
50-
$command = new Commands\Refresh($this->_driver);
50+
$command = new Commands\Command($this->_driver, 'refresh');
5151
$command->execute();
5252
}
5353

SeleniumClient/Options.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public function addCookie($name, $value, $path = null, $domain = null, $secure =
6767
{
6868
$cookie = new Cookie($name, $value, $path, $domain, $secure, $expiry);
6969
$params = array ('cookie' => $cookie->getArray());
70-
$command = new Commands\AddCookie($this->_driver, $params);
70+
$command = new Commands\Command($this->_driver, 'add_cookie', $params);
7171
$command->execute();
7272
}
7373

@@ -77,7 +77,7 @@ public function addCookie($name, $value, $path = null, $domain = null, $secure =
7777
*/
7878
public function getCookies()
7979
{
80-
$command = new Commands\GetCookies($this->_driver);
80+
$command = new Commands\Command($this->_driver, 'get_cookies');
8181
$results = $command->execute();
8282
return Cookie::buildFromArray($results['value']);
8383
}
@@ -110,7 +110,7 @@ public function deleteCookie(Cookie $cookie)
110110
*/
111111
public function deleteCookieNamed($cookieName)
112112
{
113-
$command = new Commands\ClearCookie($this->_driver, null, array('cookie_name' => $cookieName));
113+
$command = new Commands\Command($this->_driver, 'clear_cookie', null, array('cookie_name' => $cookieName));
114114
$command->execute();
115115
}
116116

@@ -119,7 +119,7 @@ public function deleteCookieNamed($cookieName)
119119
*/
120120
public function deleteAllCookies()
121121
{
122-
$command = new Commands\ClearCookies($this->_driver);
122+
$command = new Commands\Command($this->_driver, 'clear_cookies');
123123
$command->execute();
124124
}
125125
}

SeleniumClient/TargetLocator.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public function __construct(WebDriver $driver)
3434
public function window($identifier)
3535
{
3636
$params = array ('name' => $identifier);
37-
$command = new Commands\Window($this->_driver, $params);
37+
$command = new Commands\Command($this->_driver, 'window', $params);
3838
$command->execute();
3939
return $this->_driver;
4040
}
@@ -56,7 +56,7 @@ public function frame($identifier)
5656
}
5757

5858
$params = array ('id' => $idParam);
59-
$command = new Commands\Frame($this->_driver, $params);
59+
$command = new Commands\Command($this->_driver, 'frame',$params);
6060
$command->execute();
6161
return $this->_driver;
6262
}
@@ -67,7 +67,7 @@ public function frame($identifier)
6767
*/
6868
public function activeElement()
6969
{
70-
$command = new Commands\ActiveElement($this->_driver);
70+
$command = new Commands\Command($this->_driver, 'active_element');
7171
$results = $command->execute();
7272
return new WebElement($this->_driver, $results['value']['ELEMENT']);
7373
}

0 commit comments

Comments
 (0)