Commit Graph

14 Commits

Author SHA1 Message Date
Joe Ferris e0172bfcd9 Update for Capybara 2.3.0
This adds support for the full Capybara 2.3.0 API. There are two known
incompatibilities:

* Selenium supports outerWidth and outerHeight, which we cannot, because we
  dont' have an actual OS window.
* Selenium raises errors after interacting with a closed window. We focus the
  next available window after closing.

This commit adds the following:

* Implement Driver#close_window
* Implement Driver#current_window_handle
* Implement Driver#maximize_window
* Implement Driver#open_new_window
* Implement Driver#no_such_window_error
* Implement Driver#resize_window_to
* Implement Driver#switch_to_window
* Implement Driver#window_size
* Implement Driver#go_back
* Implement Driver#go_forward
* Support change events when clearing a text input
* Support setting contentEditable elements
* Support window.close() in JavaScript
* Don't return text from hidden elements
* Skip Capybara specs which use outerWidth, outerHeight
* Don't use Qt object ownership to manage windows
2014-07-01 20:36:42 -04:00
Matthew Horan c74949bd04 Rename Command::emitFinished to finish 2013-02-11 18:31:41 -05:00
Matthew Horan 6c72a99174 Serialize errors as JSON 2013-02-11 00:04:35 -05:00
Sean Geoghegan 77811ca9ba Fix memory leak of response.
Turns Response into a QObject and sets parent to the
command that emits it.

Each Command is also a child of the decorator commands,
Timeout and PageLoading commnds, so that deleting the
top level command will delete all the children.

See discussion in #430.
2012-12-14 01:46:54 -05:00
Joe Ferris 95732ad796 Split Command into more abstract Command and concrete SocketCommand 2012-07-08 12:04:30 -07:00
Matthew Horan d154a65fe8 Use the foreach macro to iterate through pages 2012-05-29 22:23:02 -04:00
Matthew Horan f80125e6cb Pass the WebPageManager to each command 2012-05-29 22:23:02 -04:00
Matthew Horan bfbda84141 Move window change handling into WebPageManager 2012-05-29 22:23:02 -04:00
Matthew Horan 82f84fbde1 WebPageManager is no longer a singleton 2012-05-29 22:23:02 -04:00
Matthew Horan 33bc195fe1 Move window selection logic into WebPage 2012-05-29 22:23:02 -04:00
Matthew Horan aaba4d1245 Find window by name, title or URL 2012-05-29 22:23:01 -04:00
Matthew Horan fe46eaf50d Implement window_handles and window_handle for proper window switching 2012-05-29 22:20:10 -04:00
Matthew Horan 468bec886f Return to the first window after yield 2012-05-25 21:09:41 -04:00
Matthew Horan efa577c3f0 First pass at within_window support 2012-05-25 21:09:41 -04:00