Commit Graph

486 Commits

Author SHA1 Message Date
Josh Knowles
ce364d1663 Refactor redirect support out of RailsSession & SinatraSession and into Session#request_page 2008-12-29 21:19:13 -05:00
Kieran Pilkington
0938c6dafc bugfix: when h was nil (which it was for all my tests), everyone would fail with nil.[]= errors. Making sure we at least have a blank hash fixes this. 2008-12-29 19:27:30 -05:00
Nicolas Sanguinetti
422c6aea89 Use request_page to handle sinatra redirects
This should make current_url and keeping the referrer work as expected
2008-12-29 03:37:41 -02:00
Nicolas Sanguinetti
6704d487bc Disable sinatra's app run and reload 2008-12-29 03:37:12 -02:00
Nicolas Sanguinetti
6d108393be Allow accessing the request and response from SinatraSession 2008-12-29 01:40:14 -02:00
Bryan Helmkamp
2ead102f54 Merge commit 'joshknowles/master' 2008-12-28 21:15:31 -05:00
Josh Knowles
4b6558e7e5 Properly set referer and redirect to proper location 2008-12-28 21:12:34 -05:00
Bryan Helmkamp
a018af99ff Remove references to should_see and should_not_see, which don't exist 2008-12-28 21:05:22 -05:00
Bryan Helmkamp
29274f9b4b Merge commit 'joshknowles/master'
Conflicts:
	lib/webrat/rails.rb
	spec/webrat/rails/rails_session_spec.rb
2008-12-28 19:35:42 -05:00
Bryan Helmkamp
f409ec3ecb Better error message if Webrat mode is unknown 2008-12-28 14:24:24 -05:00
Bryan Helmkamp
7c603f834c Minor refactorings 2008-12-27 20:18:55 -05:00
Mike Gaffney
a954b02b22 adding in failure messages 2008-12-27 17:30:54 -06:00
Mike Gaffney
449edf4a10 updated from master 2008-12-27 17:22:51 -06:00
Mike Gaffney
fbcd509097 added code, working on specs 2008-12-27 16:44:54 -06:00
Kieran Pilkington
2c51d90830 adding configuration option to change seleniums environment and port settings 2008-12-28 11:39:34 +13:00
Bryan Helmkamp
362df8abf0 Fix startup bug when using Webrat::Selenium with Test::Unit 2008-12-27 15:57:01 -05:00
Bryan Helmkamp
0eaad52768 Cleanup the way the tests switch Webrat modes 2008-12-25 23:28:29 -05:00
gaffo
22c7834512 Sets the Webrat mode with Configuration#mode= in the config block 2008-12-25 23:07:10 -05:00
Josh Knowles
89e9ea91e9 Support forwarding headers when following redirects when using the SinatraSession 2008-12-25 18:28:54 -05:00
Josh Knowles
b88b2b2949 Forward headers during redirects when using the RailsSession. 2008-12-25 16:53:06 -05:00
Graham Ashton
df2df61267 Ensure that Webrat::MechanizeSession.request_page always uses an absolute URL.
Signed-off-by: Bryan Helmkamp <bryan@brynary.com>
2008-12-25 15:03:42 +08:00
Bryan Helmkamp
3492a91c4e Updating gemspec. Another interim release 2008-12-25 01:58:54 -05:00
Noah Davis
0b9fd99bc0 stripping anchor tags from URIs before passing to rails integration session 2008-12-19 14:32:02 -05:00
Luke Melia
7d63aa1a4d Extracted save_and_open_page related functionality to a module and included it in SeleniumSession as well as the standard webrat session. Also added save_and_open_screengrab method to SeleniumSession. 2008-12-19 00:47:26 -05:00
Luke Melia
f3dfa329b5 Allow SeleniumSession's click_button to be called without an argument without blowing up. 2008-12-18 02:48:36 -05:00
Luke Melia
492a301449 For your viewing pleasure... maximize the selenium window at after initializing selenium. 2008-12-18 02:45:10 -05:00
Ross Kaffenberger
567f5ada0e Text treated as regexp for buttons 2008-12-17 18:33:20 -05:00
Bryan Helmkamp
a5e6af2fe7 Better inspect output for Webrat elements 2008-12-12 15:43:27 -05:00
gaffo
ee86067829 updating per reccomendations 2008-12-09 00:12:09 -06:00
gaffo
24ad539671 merging in current codebase 2008-12-08 23:48:00 -06:00
gaffo
2811a089bc webrat config now does the require 2008-12-08 23:19:44 -06:00
Bryan Helmkamp
2d427ed89e simualte and automate need to be there in SeleniumSession too 2008-12-08 04:02:39 -05:00
Bryan Helmkamp
0d028e92fa Include Webrat::Matchers into IntegrationTest 2008-12-07 16:39:09 -05:00
Bryan Helmkamp
f53e415076 include Webrat::Selenium::Matchers into Webrat::Selenium::Rails::World 2008-12-07 14:02:06 -05:00
Bryan Helmkamp
0e9f4731bb Adding webrat.simulate and webrat.automate for using the same step mathers in multiple modes 2008-12-03 22:23:13 -05:00
Bryan Helmkamp
881d9f388d Adding have_xpath matcher for Selenium 2008-12-02 22:13:13 -05:00
Bryan Helmkamp
0888c683a3 Added auto-waiting #contain and #have_selector matchers for Selenium 2008-12-02 21:55:09 -05:00
Bryan Helmkamp
0fb3ed6b11 Add docs for Webrat::Selenium 2008-12-02 20:02:08 -05:00
Bryan Helmkamp
5cf23cbda3 Detect if the document is XML or HTML using the Content-Type when in Rails mode 2008-12-02 01:03:38 -05:00
Bryan Helmkamp
a205b6fa44 Converting some CSS selectors to XPath 2008-12-02 00:16:15 -05:00
Bryan Helmkamp
e88772021b More Webrat implicit waiting. Only load Webrat selectors once per run, not per test 2008-12-01 22:04:24 -05:00
Bryan Helmkamp
d8e205cad0 Adding wait_for_element before Webrat actions 2008-12-01 21:15:23 -05:00
Bryan Helmkamp
26a08e69ae Correcting include of Webrat::Methods in Selenium mode 2008-12-01 20:57:57 -05:00
Bryan Helmkamp
53efcc6185 Removing Prototype-specific waits 2008-12-01 20:37:18 -05:00
Bryan Helmkamp
33cfb1cd6a Removing definition of webrat_session method out of the loop 2008-12-01 20:33:01 -05:00
Bryan Helmkamp
2a4959e7f6 Expose #selenium method for direct access to selenium object 2008-12-01 20:28:48 -05:00
Bryan Helmkamp
0de031c93a Check nokogiri gem version before requiring nokogiri
Gives better error messages is using an old nokogiri version
2008-12-01 10:28:02 -05:00
Bryan Helmkamp
d576a72120 Expose select_option through Webrat::Methods. Minor refactorings 2008-11-30 20:35:08 -05:00
Bryan Helmkamp
f5ed57e042 Docs 2008-11-30 20:09:41 -05:00
Bryan Helmkamp
260ef1ae4e Use FieldNamedLocator in form 2008-11-30 15:51:44 -05:00
Bryan Helmkamp
522bb3272f Initialize locators with a session and a dom instead of a scope 2008-11-30 15:47:31 -05:00
Bryan Helmkamp
9ace546766 Removing more dead methods 2008-11-30 15:39:03 -05:00
Bryan Helmkamp
c05c0f6c73 Adding FormLocator. Removing some dead methods 2008-11-30 15:24:50 -05:00
Bryan Helmkamp
0eee6d75e4 Updating SelectOptionLocator to use elements 2008-11-30 15:15:50 -05:00
Bryan Helmkamp
ac4feb3b7e Working on SelectOptionLocator 2008-11-30 15:09:54 -05:00
Bryan Helmkamp
e72bba29c7 Switching FieldLabeledLocator to use elements 2008-11-30 14:59:33 -05:00
Bryan Helmkamp
28bd5f2533 Load field labels instead of creating new ones 2008-11-30 14:52:52 -05:00
Bryan Helmkamp
de2ba2caf8 Ditching preloading of Webrat::Elements 2008-11-30 14:48:32 -05:00
Bryan Helmkamp
d48a0fcb15 Refactoring node location 2008-11-30 14:46:52 -05:00
Bryan Helmkamp
53539eda09 Moving around XML code 2008-11-30 01:38:55 -05:00
Bryan Helmkamp
f3ff8d4ad2 Refactoring SelectOption creation 2008-11-30 01:29:58 -05:00
Bryan Helmkamp
1e7e977ec4 Moving #path method up to Webrat::Element 2008-11-30 01:27:24 -05:00
Bryan Helmkamp
830b459482 SelectOption is a Webrat::Element too 2008-11-30 01:26:07 -05:00
Bryan Helmkamp
c84e5335b5 Moving element files to webrat/core/elements 2008-11-30 01:20:31 -05:00
Bryan Helmkamp
3fd91e34be Extracting Webrat::Element superclass and refactoring element creation 2008-11-30 01:18:36 -05:00
Bryan Helmkamp
4594a39327 Load fields and labels directly from the scope 2008-11-30 00:47:49 -05:00
Bryan Helmkamp
40e0272dff Initialize Labels with a session refrence 2008-11-30 00:38:05 -05:00
Bryan Helmkamp
9e743ea3e2 Stop initializing Fields with references to the Form. They can find it by walking the DOM 2008-11-30 00:35:32 -05:00
Bryan Helmkamp
53979cbb52 Working on FieldLabeled locator 2008-11-30 00:12:46 -05:00
Bryan Helmkamp
27626ea389 Refactoring label locating to use elements 2008-11-29 23:59:26 -05:00
Bryan Helmkamp
67dd6d7c58 Moving requires 2008-11-29 23:22:22 -05:00
Bryan Helmkamp
87a4ff91ca Adding Locator#locate! method for error raising 2008-11-29 23:20:36 -05:00
Bryan Helmkamp
53ba0cc691 Extract FieldLocator 2008-11-29 23:11:16 -05:00
Bryan Helmkamp
f843ac2ae3 Moving locator methods 2008-11-29 23:08:23 -05:00
Bryan Helmkamp
1647d6ec1e Locator refactoring 2008-11-29 23:03:17 -05:00
Bryan Helmkamp
4ae94af45c Extract LabelLocator 2008-11-29 13:20:18 -05:00
Bryan Helmkamp
f6a9bed41e Extract FieldLabeledLocator 2008-11-29 13:02:05 -05:00
Bryan Helmkamp
1723157528 Extracting SelectOptionLocator 2008-11-29 12:55:57 -05:00
Bryan Helmkamp
a472bbfbde Namespace locators in Webrat::Locators 2008-11-29 02:00:57 -05:00
Bryan Helmkamp
d7eec20950 Extract FieldNamedLocator object 2008-11-29 01:58:27 -05:00
Bryan Helmkamp
eb95f6cf09 Refactoring locators 2008-11-29 01:54:49 -05:00
Bryan Helmkamp
04959ae457 Extract FieldByIdLocator object 2008-11-29 01:51:18 -05:00
Bryan Helmkamp
9e030a1b05 Extracting AreaLocator object 2008-11-29 01:48:16 -05:00
Bryan Helmkamp
2e69cb1911 Removing comments 2008-11-29 01:45:03 -05:00
Bryan Helmkamp
5b8a15bae7 Using elements to locate links 2008-11-29 01:44:20 -05:00
Bryan Helmkamp
9254397807 Extracting LinkLocator object 2008-11-29 01:33:55 -05:00
Bryan Helmkamp
0b6d9c28ea Extracting ButtonLocator object 2008-11-29 01:30:23 -05:00
Bryan Helmkamp
e5fb990cda Minor cleanups to locators 2008-11-29 01:19:59 -05:00
Bryan Helmkamp
4a63c9bfd1 Switching field_named locator to use elements 2008-11-29 01:14:49 -05:00
Bryan Helmkamp
4736c4cb1a Adding Field.xpath_search method with the XPath to all Webrat fields 2008-11-29 01:12:07 -05:00
Bryan Helmkamp
e0488cd8e4 Looking up Fields using Session#elements hash 2008-11-29 01:08:58 -05:00
Bryan Helmkamp
8e864f7e0d Extract Session#reset method 2008-11-29 01:05:19 -05:00
Bryan Helmkamp
154c83eced Store references to Areas in a Session#elements hash 2008-11-29 01:00:18 -05:00
Bryan Helmkamp
857625840f Adding Webrat::XML.xpath_to method 2008-11-29 00:49:00 -05:00
Bryan Helmkamp
6316faae44 Changing Field creation to use XPath 2008-11-29 00:43:24 -05:00
Bryan Helmkamp
f032a8de73 Refactoring CSS searching for building Links, Areas and Forms 2008-11-29 00:11:40 -05:00
Bryan Helmkamp
f2758c5d81 Search for areas using the DOM 2008-11-28 19:52:34 -05:00
Bryan Helmkamp
0b1dfbe0a2 Search for buttons using DOM 2008-11-28 18:30:38 -05:00
Bryan Helmkamp
ca0642e35c Updating field_with_id to search DOM elements 2008-11-28 18:14:42 -05:00
Bryan Helmkamp
ff2dd5de61 Adding require and switching to class_eval 2008-11-28 14:41:17 -05:00
Bryan Helmkamp
87211f260d Use REXML and Hpricot together when Nokogiri is not available
This gets us the ability to use XPath consistently, as well as Hpricot's
forgiving parser, when using JRuby
2008-11-28 02:02:17 -05:00
Bryan Helmkamp
334108015f Abstracting access to inner_html and inner_text to Webrat::XML methods 2008-11-28 00:12:21 -05:00
Bryan Helmkamp
9a344fdc2b Converting usages of element attributes to use a Webrat::XML method 2008-11-27 00:57:10 -05:00
Bryan Helmkamp
7ef8fdf7ba Processing CSS searches as XPath 2008-11-27 00:40:18 -05:00
Bryan Helmkamp
56dc8147f2 Unifying on more usage of css_search method 2008-11-27 00:36:07 -05:00
Bryan Helmkamp
e7ddb4bdd1 Extracting hpricot_document method 2008-11-27 00:33:11 -05:00
Bryan Helmkamp
b1ef30c71d Removing empty file 2008-11-27 00:29:47 -05:00
Bryan Helmkamp
8a4a7a328f Revert "Changing field_named and field_with_id to use XPath"
This reverts commit 4a6c6fb2fc.

Conflicts:

	lib/webrat/core/form.rb
2008-11-26 21:37:56 -05:00
Bryan Helmkamp
8770ccb563 Fixing another bug in detecting fields via XPath 2008-11-26 20:47:50 -05:00
Bryan Helmkamp
4f530cfa29 Extending ActionController::IntegrationTest instead of ActionController::Integration::Session fixes error with Webrat's select method 2008-11-26 14:26:10 -05:00
Bryan Helmkamp
01fcd0dea1 Making Webrat's usage of the #path Nokogiri method work with Hpricot too 2008-11-26 14:25:42 -05:00
Bryan Helmkamp
e822535b6e More minor RDoc tweaks 2008-11-25 01:34:34 -05:00
Bryan Helmkamp
491ceb7e5b Deprecating old style Selenium methods 2008-11-25 00:03:16 -05:00
Bryan Helmkamp
9b1503508b Deprecating old style methods 2008-11-24 23:55:39 -05:00
Bryan Helmkamp
4a6c6fb2fc Changing field_named and field_with_id to use XPath 2008-11-24 21:59:56 -05:00
Bryan Helmkamp
5fd88ba4de Bumping revision for pre-release gem 2008-11-24 20:29:58 -05:00
Bryan Helmkamp
3b8fc5551f RDoc tweaks 2008-11-24 20:03:32 -05:00
Bryan Helmkamp
5502948417 Starting on field_with_xpath implementation 2008-11-24 14:15:28 -05:00
Bryan Helmkamp
da68aa8bce Cleaning up Selenium support. Mongrel and Selenium servers start/shutdown automatically 2008-11-23 19:46:37 -05:00
Bryan Helmkamp
e6cb40b66e Adding methods to start and stop the selenium server java process 2008-11-23 15:44:49 -05:00
Bryan Helmkamp
f6ce5bbfb1 Using configuration in Webrat instead of defined? checks 2008-11-23 14:59:07 -05:00
Bryan Helmkamp
1017fdfba7 parse_with_nokogiri default to true on MRI and false on JRuby 2008-11-23 14:49:05 -05:00
Bryan Helmkamp
302f0dc1c6 Add a configuration option for parse_with_nokogiri 2008-11-23 14:44:13 -05:00
Bryan Helmkamp
0d205e382b Don't need a default mode 2008-11-23 14:40:19 -05:00
Bryan Helmkamp
1fb3fd07d4 Using Webrat mode to determine which logger to use 2008-11-23 14:13:34 -05:00
Bryan Helmkamp
59560a043b Removing Webrat.root method 2008-11-23 14:13:29 -05:00
Bryan Helmkamp
48e43a257c Always raise Webrat::WebratErrors (or a subclass), not RuntimeErrors 2008-11-23 14:08:34 -05:00
Bryan Helmkamp
db0488c0e2 Updating usages of "selects" methods to "select" 2008-11-23 14:05:04 -05:00
Bryan Helmkamp
f03905e6b6 Use Webrat::Methods in specs 2008-11-23 00:48:42 -05:00
Bryan Helmkamp
adf68c2f8f Change Webrat Rails integration to use the Webrat::Methods module 2008-11-22 23:49:12 -05:00
Bryan Helmkamp
a8e02a6b6e Switch to using Nokogiri.parse for XML/XHTML autodetection [#66 state:resolved] 2008-11-22 16:46:03 -05:00
Luke Melia
9b5ffacecc Switch to using selenium-client gem and vendor selenium-server.jar (not used directly from webrat yet) 2008-11-20 16:07:18 -05:00
Bryan Helmkamp
f1b4486594 Moving requiring of Nokogiri/Hpricot/REXML to a method 2008-11-19 15:52:56 -05:00
Bryan Helmkamp
ec8bc82c24 Adding response method to MechanizeSession 2008-11-18 22:56:35 -05:00
Bryan Helmkamp
22d5b91dd4 Add spec:jruby task for running spec suite with jruby 2008-11-18 21:09:48 -05:00
Bryan Helmkamp
10d5d7695f Raise Webrat::NotFoundErrors instead of RuntimeErrors to make error catching easier 2008-11-18 20:55:55 -05:00
Bryan Helmkamp
df9d8179c0 Field#to_param should return a hash when Merb is not defined for Mechanize support [#62 state:resolved] 2008-11-18 20:48:12 -05:00
moro
dc52f07a9f Link#matches_text?() use @element.text as text
It decodes character references.
Userful for multibyte languages(eg. Japanese).

And also uses @element.inner_html to match with HTML (eg.image link)
2008-11-18 20:37:35 -05:00
Bryan Helmkamp
5ee4357cd6 Add set_hidden_field and submit_form methods ND/BH 2008-11-17 14:21:16 -05:00
Bryan Helmkamp
3abaa924cc Changing requiring of nokogiri to work on jruby 2008-11-17 00:05:57 -05:00
Bryan Helmkamp
1bdead1655 Bug fix for hash merging Mashes 2008-11-16 23:21:29 -05:00
Drew Colthorp
83f3ab468d fixed bug where webrat would lose complex parameters (like foo[bar[baz]][]) in merb due to not correctly merging Mashes. 2008-11-16 23:15:50 -05:00
Bryan Helmkamp
5249826cb7 Working on running specs in separate processes 2008-11-16 23:04:34 -05:00
Bryan Helmkamp
3d467f3c11 Revert "adding html unit spike" which was inadvertantly merged in
This reverts commit 0800f79428.
2008-11-16 21:35:11 -05:00
Bryan Helmkamp
50762b6f5a Cleaning up some requires to get rid of double-includes during spec runs 2008-11-16 21:25:29 -05:00
Bryan Helmkamp
f2f8bae190 Removing :suffixes and :suffix_convention options from selects_date and selects_time methods 2008-11-16 19:29:13 -05:00
Bryan Helmkamp
31cc6b75da Collapsing Webrat::Core module. Moving configuration methods to configuration.rb 2008-11-16 18:58:24 -05:00
Bryan Helmkamp
9f8a88d649 Merge commit 'gaffo/webrat_config' 2008-11-16 18:51:42 -05:00
Ben Mabey
4dd1c4b62d helpful error message for missing option values, closes #40 2008-11-15 14:57:57 -07:00
Ben Mabey
6cd76fa08e selects_time, selects_date, and selects_datetime added to API. Closes #36. 2008-11-15 14:06:04 -07:00