Commit Graph

9 Commits

Author SHA1 Message Date
Thomas Walpole ed295f25bd Update to modern RSpec 2017-02-06 10:56:58 -08:00
Robert Fletcher 4334dbbf6d Fix for missing select events
This is a fix for an issue where select tags don't bubble the correct
events when clicked. More discussion here:
https://github.com/thoughtbot/capybara-webkit/issues/763
2015-05-22 13:41:01 -04:00
Joe Ferris aeafb90498 Make caching behavior more like Selenium
We disabled caching entirely, because it sometimes led to unexpected
behavior in tests, and Qt 4.8 didn't behave the same as Qt 5.x.

However, this introduced issues:

* Selenium does perform caching, so capybara-webkit behaved differently
  when switching drivers
* Without any caching, assets were sometimes requested twice for the
  same page

This commit re-enables caching and attempts to improve the way we behave
on cached pages so that testing is less unpredictable. It adds tests to
ensure we continue to behave similarly to Selenium.
2015-05-15 10:32:22 -04:00
Matthew Horan bbcfb7ea4b Don't interact with readonly elements
* This behavior changed in Capybara 2.4.
* Previously we would focus and send keypress events to readonly
  elements. Now readonly elements are ignored, and a warning is emitted
  by Capybara.
2014-07-13 19:19:01 -04:00
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 136e0e2bb7 Don't clear readonly text fields when set 2013-03-28 20:12:45 -04:00
Matthew Horan a5c51b23bd Set text fields using native keypress events 2013-03-28 19:37:56 -04:00
Joe Ferris a4eb401da4 Improve focus handling by relying on Javascript focus() 2012-07-10 20:53:57 -07:00
Joe Ferris ba28a2a20a Fix focus/blur event compatibility with Selenium while filling out forms 2012-07-10 20:05:33 -07:00