selenium-rspec-dsl 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (236) hide show
  1. data/common/shared/common.rb +167 -0
  2. data/config/aggregate_reports.rb +124 -0
  3. data/config/array_extension.rb +13 -0
  4. data/config/multi_process_behaviour_runner.rb +50 -0
  5. data/config/selenium-setup.rb +32 -0
  6. data/config/site_config.rb +8 -0
  7. data/sites/button.rb +31 -0
  8. data/sites/buttonAjax.rb +14 -0
  9. data/sites/buttonJQuery.rb +26 -0
  10. data/sites/buttonMultiWindow.rb +99 -0
  11. data/sites/buttonNonLoad.rb +11 -0
  12. data/sites/checkbox.rb +22 -0
  13. data/sites/checkboxExtjs.rb +10 -0
  14. data/sites/checkboxGwt.rb +24 -0
  15. data/sites/dropdown.rb +28 -0
  16. data/sites/dropdownAjax.rb +40 -0
  17. data/sites/dropdownExtjs.rb +32 -0
  18. data/sites/dropdownJQuery.rb +40 -0
  19. data/sites/dropdownLoad.rb +25 -0
  20. data/sites/element.rb +172 -0
  21. data/sites/form.rb +7 -0
  22. data/sites/image.rb +7 -0
  23. data/sites/label.rb +32 -0
  24. data/sites/link.rb +32 -0
  25. data/sites/linkMultiWindow.rb +160 -0
  26. data/sites/linkNonLoad.rb +11 -0
  27. data/sites/listbox.rb +16 -0
  28. data/sites/page.rb +16 -0
  29. data/sites/panel.rb +7 -0
  30. data/sites/radiobutton.rb +10 -0
  31. data/sites/tabPanel.rb +7 -0
  32. data/sites/table.rb +48 -0
  33. data/sites/tableExtjs.rb +42 -0
  34. data/sites/test/googleResults_screen.rb +15 -0
  35. data/sites/test/googleSearch_screen.rb +27 -0
  36. data/sites/textbox.rb +16 -0
  37. data/sites/tree.rb +7 -0
  38. data/sites/treeGwt.rb +32 -0
  39. data/spec/spec.opts +6 -0
  40. data/spec/spec_helper.rb +40 -0
  41. data/spec/test/testPass_spec.rb +36 -0
  42. data/spec/test/testPending_spec.rb +13 -0
  43. data/vendor/selenium-client-1.2.17/README.markdown +328 -0
  44. data/vendor/selenium-client-1.2.17/examples/rspec/google_spec.rb +41 -0
  45. data/vendor/selenium-client-1.2.17/examples/script/google.rb +25 -0
  46. data/vendor/selenium-client-1.2.17/examples/testunit/google_test.rb +39 -0
  47. data/vendor/selenium-client-1.2.17/lib/nautilus/shell.rb +32 -0
  48. data/vendor/selenium-client-1.2.17/lib/selenium.rb +14 -0
  49. data/vendor/selenium-client-1.2.17/lib/selenium/client.rb +27 -0
  50. data/vendor/selenium-client-1.2.17/lib/selenium/client/base.rb +118 -0
  51. data/vendor/selenium-client-1.2.17/lib/selenium/client/driver.rb +11 -0
  52. data/vendor/selenium-client-1.2.17/lib/selenium/client/extensions.rb +118 -0
  53. data/vendor/selenium-client-1.2.17/lib/selenium/client/generated_driver.rb +1711 -0
  54. data/vendor/selenium-client-1.2.17/lib/selenium/client/idiomatic.rb +488 -0
  55. data/vendor/selenium-client-1.2.17/lib/selenium/client/javascript_expression_builder.rb +116 -0
  56. data/vendor/selenium-client-1.2.17/lib/selenium/client/javascript_frameworks/jquery.rb +13 -0
  57. data/vendor/selenium-client-1.2.17/lib/selenium/client/javascript_frameworks/prototype.rb +13 -0
  58. data/vendor/selenium-client-1.2.17/lib/selenium/client/protocol.rb +96 -0
  59. data/vendor/selenium-client-1.2.17/lib/selenium/client/selenium_helper.rb +34 -0
  60. data/vendor/selenium-client-1.2.17/lib/selenium/command_error.rb +4 -0
  61. data/vendor/selenium-client-1.2.17/lib/selenium/protocol_error.rb +4 -0
  62. data/vendor/selenium-client-1.2.17/lib/selenium/rake/default_tasks.rb +16 -0
  63. data/vendor/selenium-client-1.2.17/lib/selenium/rake/remote_control_start_task.rb +70 -0
  64. data/vendor/selenium-client-1.2.17/lib/selenium/rake/remote_control_stop_task.rb +44 -0
  65. data/vendor/selenium-client-1.2.17/lib/selenium/rake/tasks.rb +6 -0
  66. data/vendor/selenium-client-1.2.17/lib/selenium/remote_control/remote_control.rb +33 -0
  67. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/file_path_strategy.rb +78 -0
  68. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/html_report.rb +123 -0
  69. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/selenium_test_report_formatter.rb +87 -0
  70. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/system_capture.rb +72 -0
  71. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/rspec_extensions.rb +96 -0
  72. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/spec_helper.rb +35 -0
  73. data/vendor/selenium-client-1.2.17/lib/tcp_socket_extension.rb +32 -0
  74. data/vendor/selenium-client-1.2.17/test/all_unit_tests.rb +3 -0
  75. data/vendor/selenium-grid-1.0.4/Capfile +107 -0
  76. data/vendor/selenium-grid-1.0.4/README +10 -0
  77. data/vendor/selenium-grid-1.0.4/Rakefile +190 -0
  78. data/vendor/selenium-grid-1.0.4/build.xml +182 -0
  79. data/vendor/selenium-grid-1.0.4/doc/resources/Multiple Environments Demo Setup.svg +518 -0
  80. data/vendor/selenium-grid-1.0.4/doc/resources/Multiple Machine Demo Setup.svg +371 -0
  81. data/vendor/selenium-grid-1.0.4/doc/resources/Rakefile +18 -0
  82. data/vendor/selenium-grid-1.0.4/doc/resources/Requesting a Specific Environment.svg +576 -0
  83. data/vendor/selenium-grid-1.0.4/doc/resources/Selenium Grid Setup.svg +539 -0
  84. data/vendor/selenium-grid-1.0.4/doc/resources/Selenium Grid.css +68 -0
  85. data/vendor/selenium-grid-1.0.4/doc/resources/Traditional Selenium Setup.svg +295 -0
  86. data/vendor/selenium-grid-1.0.4/doc/website/Rakefile +37 -0
  87. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Environment Demo Setup - Small.png +0 -0
  88. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Environment Demo Setup.png +0 -0
  89. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Machine Demo Setup - Small.png +0 -0
  90. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Machine Demo Setup.png +0 -0
  91. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Requesting a Specific Environment - Small.png +0 -0
  92. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Requesting a Specific Environment.png +0 -0
  93. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Selenium Grid Logo.graffle +1015 -0
  94. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Selenium Grid Setup - Small.png +0 -0
  95. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Selenium Grid Setup.png +0 -0
  96. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Traditional Selenium Setup - Small.png +0 -0
  97. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Traditional Selenium Setup.png +0 -0
  98. data/vendor/selenium-grid-1.0.4/doc/website/faq.markdown +686 -0
  99. data/vendor/selenium-grid-1.0.4/doc/website/images/ant_version_osx_screenshot.png +0 -0
  100. data/vendor/selenium-grid-1.0.4/doc/website/images/ant_version_win_screenshot.png +0 -0
  101. data/vendor/selenium-grid-1.0.4/doc/website/images/background_better.png +0 -0
  102. data/vendor/selenium-grid-1.0.4/doc/website/images/background_feedback.png +0 -0
  103. data/vendor/selenium-grid-1.0.4/doc/website/images/background_participate.png +0 -0
  104. data/vendor/selenium-grid-1.0.4/doc/website/images/background_start_tracks.png +0 -0
  105. data/vendor/selenium-grid-1.0.4/doc/website/images/background_started.png +0 -0
  106. data/vendor/selenium-grid-1.0.4/doc/website/images/check_path_osx_screenshot.png +0 -0
  107. data/vendor/selenium-grid-1.0.4/doc/website/images/check_path_win_screenshot.png +0 -0
  108. data/vendor/selenium-grid-1.0.4/doc/website/images/dot_profile_editing_osx_screenshot.png +0 -0
  109. data/vendor/selenium-grid-1.0.4/doc/website/images/dot_profile_osx_screenshot.png +0 -0
  110. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-install.png +0 -0
  111. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-profile-update.png +0 -0
  112. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-verify.png +0 -0
  113. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-version.png +0 -0
  114. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-java-version.png +0 -0
  115. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-navigate-path.png +0 -0
  116. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-selenium-install.png +0 -0
  117. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-selenium-sanity-check.png +0 -0
  118. data/vendor/selenium-grid-1.0.4/doc/website/images/install/win/selenium-check.bmp +0 -0
  119. data/vendor/selenium-grid-1.0.4/doc/website/images/install_ant_osx_screenshot.png +0 -0
  120. data/vendor/selenium-grid-1.0.4/doc/website/images/installing_grid_osx_screenshot.png +0 -0
  121. data/vendor/selenium-grid-1.0.4/doc/website/images/java_version_osx_screenshot.png +0 -0
  122. data/vendor/selenium-grid-1.0.4/doc/website/images/java_version_win_screenshot.png +0 -0
  123. data/vendor/selenium-grid-1.0.4/doc/website/images/sanity_check_osx_screenshot.png +0 -0
  124. data/vendor/selenium-grid-1.0.4/doc/website/images/sanity_check_win_screenshot.png +0 -0
  125. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-huge-white.png +0 -0
  126. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-huge.png +0 -0
  127. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-large.png +0 -0
  128. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-small.png +0 -0
  129. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo.png +0 -0
  130. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium_grid_logo_large.png +0 -0
  131. data/vendor/selenium-grid-1.0.4/doc/website/images/update_path_win_screenshot.png +0 -0
  132. data/vendor/selenium-grid-1.0.4/doc/website/javascripts/shadedborder.js +267 -0
  133. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/document.css +82 -0
  134. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/faq.css +97 -0
  135. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/home.css +133 -0
  136. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/openqa.css +72 -0
  137. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/site.css +74 -0
  138. data/vendor/selenium-grid-1.0.4/examples/ec2/Capfile +276 -0
  139. data/vendor/selenium-grid-1.0.4/examples/ec2/etc/background.png +0 -0
  140. data/vendor/selenium-grid-1.0.4/examples/ec2/etc/background.svg +163 -0
  141. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/cloud.rb +35 -0
  142. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/ec2.rb +7 -0
  143. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/ec2_client.rb +54 -0
  144. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/hub.rb +22 -0
  145. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/remote_command.rb +47 -0
  146. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/server.rb +56 -0
  147. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/all_test.rb +2 -0
  148. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/cloud_test.rb +27 -0
  149. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/ec2_client_test.rb +137 -0
  150. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/hub_test.rb +24 -0
  151. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/remote_command_test.rb +46 -0
  152. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/server_test.rb +22 -0
  153. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/test_helper.rb +4 -0
  154. data/vendor/selenium-grid-1.0.4/examples/ec2/vnc_password +1 -0
  155. data/vendor/selenium-grid-1.0.4/examples/java/Java Example.iml +18 -0
  156. data/vendor/selenium-grid-1.0.4/examples/java/build.xml +90 -0
  157. data/vendor/selenium-grid-1.0.4/examples/java/src/com/thoughtworks/selenium/grid/examples/java/GoogleImageTestBase.java +46 -0
  158. data/vendor/selenium-grid-1.0.4/examples/java/src/com/thoughtworks/selenium/grid/examples/java/ParisTest.java +50 -0
  159. data/vendor/selenium-grid-1.0.4/examples/java/src/com/thoughtworks/selenium/grid/examples/java/PerigordTest.java +42 -0
  160. data/vendor/selenium-grid-1.0.4/examples/java/target/classes/com/thoughtworks/selenium/grid/examples/java/GoogleImageTestBase.class +0 -0
  161. data/vendor/selenium-grid-1.0.4/examples/java/target/classes/com/thoughtworks/selenium/grid/examples/java/ParisTest.class +0 -0
  162. data/vendor/selenium-grid-1.0.4/examples/java/target/classes/com/thoughtworks/selenium/grid/examples/java/PerigordTest.class +0 -0
  163. data/vendor/selenium-grid-1.0.4/examples/java/testng-slow.xml +9 -0
  164. data/vendor/selenium-grid-1.0.4/examples/java/testng.xml +9 -0
  165. data/vendor/selenium-grid-1.0.4/examples/ruby/README +66 -0
  166. data/vendor/selenium-grid-1.0.4/examples/ruby/Rakefile +101 -0
  167. data/vendor/selenium-grid-1.0.4/examples/ruby/Ruby Example.iml +17 -0
  168. data/vendor/selenium-grid-1.0.4/examples/ruby/flickr_example.rb +16 -0
  169. data/vendor/selenium-grid-1.0.4/examples/ruby/lib/array_extension.rb +13 -0
  170. data/vendor/selenium-grid-1.0.4/examples/ruby/lib/multi_process_behaviour_runner.rb +28 -0
  171. data/vendor/selenium-grid-1.0.4/examples/ruby/paris_spec.rb +34 -0
  172. data/vendor/selenium-grid-1.0.4/examples/ruby/perigord_spec.rb +22 -0
  173. data/vendor/selenium-grid-1.0.4/examples/ruby/spec_helper.rb +59 -0
  174. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_04b8969da99c51289f692b41abbf271b_page_screenshot.png +0 -0
  175. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_04b8969da99c51289f692b41abbf271b_system_screenshot.png +0 -0
  176. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_280fd974268e3aecb89fbfbee25b5322_page_screenshot.png +0 -0
  177. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_280fd974268e3aecb89fbfbee25b5322_system_screenshot.png +0 -0
  178. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_8808fb9026e023f809d50ddc9cf00cd3_page_screenshot.png +0 -0
  179. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_8808fb9026e023f809d50ddc9cf00cd3_system_screenshot.png +0 -0
  180. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_94b209474d36add5ba908f308c63aa15_page_screenshot.png +0 -0
  181. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_94b209474d36add5ba908f308c63aa15_system_screenshot.png +0 -0
  182. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_a18dd8ce90cb4681d55b2148326ff085_page_screenshot.png +0 -0
  183. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_a18dd8ce90cb4681d55b2148326ff085_system_screenshot.png +0 -0
  184. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_b877a400a718a915c95038427389e0d9_page_screenshot.png +0 -0
  185. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_b877a400a718a915c95038427389e0d9_system_screenshot.png +0 -0
  186. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c1c6e8109e89867b52f6e123b8847b85_page_screenshot.png +0 -0
  187. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c1c6e8109e89867b52f6e123b8847b85_system_screenshot.png +0 -0
  188. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c9e7156818e496f6abb983a9a1725295_page_screenshot.png +0 -0
  189. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c9e7156818e496f6abb983a9a1725295_system_screenshot.png +0 -0
  190. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_d6b2848186a7e4a73e19692c0fab2ae5_page_screenshot.png +0 -0
  191. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_d6b2848186a7e4a73e19692c0fab2ae5_system_screenshot.png +0 -0
  192. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_e30337afe445f0b6ebd29ecfaf4cd9f0_page_screenshot.png +0 -0
  193. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_e30337afe445f0b6ebd29ecfaf4cd9f0_system_screenshot.png +0 -0
  194. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_edc2da92cbf119e95eae988bb6f80792_page_screenshot.png +0 -0
  195. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_edc2da92cbf119e95eae988bb6f80792_system_screenshot.png +0 -0
  196. data/vendor/selenium-grid-1.0.4/grid_configuration.yml +46 -0
  197. data/vendor/selenium-grid-1.0.4/lib/build/common-build.xml +228 -0
  198. data/vendor/selenium-grid-1.0.4/lib/ruby/file_extensions.rb +9 -0
  199. data/vendor/selenium-grid-1.0.4/lib/ruby/java/classpath.rb +28 -0
  200. data/vendor/selenium-grid-1.0.4/lib/ruby/java/vm.rb +31 -0
  201. data/vendor/selenium-grid-1.0.4/lib/ruby/s_grid/hub.rb +29 -0
  202. data/vendor/selenium-grid-1.0.4/lib/ruby/s_grid/remote_control.rb +40 -0
  203. data/vendor/selenium-grid-1.0.4/lib/ruby/tcp_socket_extensions.rb +23 -0
  204. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-demo-1.0.4.jar +0 -0
  205. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-demo-standalone-1.0.4.jar +0 -0
  206. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-hub-1.0.4.jar +0 -0
  207. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-hub-standalone-1.0.4.jar +0 -0
  208. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-remote-control-1.0.4.jar +0 -0
  209. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-remote-control-standalone-1.0.4.jar +0 -0
  210. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-tools-1.0.4.jar +0 -0
  211. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-tools-standalone-1.0.4.jar +0 -0
  212. data/vendor/selenium-grid-1.0.4/lib/testng.policy +11 -0
  213. data/vendor/selenium-grid-1.0.4/log/test.txt +1 -0
  214. data/vendor/selenium-grid-1.0.4/project.properties +4 -0
  215. data/vendor/selenium-grid-1.0.4/sample-scripts/kill-rcs.sh +3 -0
  216. data/vendor/selenium-grid-1.0.4/sample-scripts/launch-rc.sh +4 -0
  217. data/vendor/selenium-grid-1.0.4/sample-scripts/launch-rcs.sh +5 -0
  218. data/vendor/selenium-grid-1.0.4/sample-scripts/launch-remote-controls.rb +20 -0
  219. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/Command line test.html +218 -0
  220. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/classes.html +44 -0
  221. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/groups.html +5 -0
  222. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/index.html +6 -0
  223. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/main.html +2 -0
  224. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/methods-alphabetical.html +12 -0
  225. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/methods-not-run.html +2 -0
  226. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/methods.html +12 -0
  227. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/reporter-output.html +1 -0
  228. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/testng.xml.html +1 -0
  229. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/toc.html +30 -0
  230. data/vendor/selenium-grid-1.0.4/target/reports/emailable-report.html +117 -0
  231. data/vendor/selenium-grid-1.0.4/target/reports/index.html +9 -0
  232. data/vendor/selenium-grid-1.0.4/vendor/commons-logging-1.0.4.jar +0 -0
  233. data/vendor/selenium-grid-1.0.4/vendor/selenium-java-client-driver-1.0.1.jar +0 -0
  234. data/vendor/selenium-grid-1.0.4/vendor/selenium-server-1.0.3.jar +0 -0
  235. data/vendor/selenium-grid-1.0.4/vendor/testng-5.7-jdk15.jar +0 -0
  236. metadata +296 -0
@@ -0,0 +1,26 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ class Button_JQuery < Element
4
+ # Clicks on object
5
+ def click
6
+ @selenium.click(@locator)
7
+ begin
8
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
9
+ rescue => e
10
+ #continue
11
+ sleep(4)
12
+ end
13
+ sleep(5)
14
+ end
15
+
16
+ def doubleClick
17
+ @selenium.double_click(@locator)
18
+ begin
19
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
20
+ rescue => e
21
+ #continue
22
+ sleep(4)
23
+ end
24
+ sleep(5)
25
+ end
26
+ end
@@ -0,0 +1,99 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Button object used when multiple window or popups occur after clicking.
4
+ # Subclass of Element.
5
+ class ButtonMultiWindow < Element
6
+ # Clicks on object, waits for expectedWindows count and then selects new window.
7
+ def click(expectedWindows=1)
8
+
9
+ if expectedWindows == 1
10
+ @selenium.click(@locator)
11
+ @selenium.select_window "null"
12
+ sleep(3)
13
+ @selenium.wait_for_condition("selenium.browserbot.getCurrentWindow()", TIMEOUT)
14
+
15
+ else
16
+ begin
17
+ id = @selenium.get_attribute("#{@locator}@id")
18
+ url = @selenium.get_eval("window.document.getElementById('#{id}').href")
19
+ rescue => e
20
+ url = "null"
21
+ end
22
+ if url == "null"
23
+ windows = @selenium.get_all_window_ids()
24
+ @selenium.click(@locator)
25
+
26
+ for wait in 1..20 do
27
+ windows = @selenium.get_all_window_ids()
28
+ if expectedWindows != windows.length
29
+ sleep(0.5)
30
+ else
31
+ sleep(5)
32
+ break
33
+ end
34
+ end
35
+ if expectedWindows < windows.length
36
+ begin
37
+ window_names = @selenium.get_all_window_names()
38
+ if window_names[expectedWindows] == "null"
39
+ @selenium.select_window("name=#{window_names[1]}")
40
+ else
41
+ @selenium.select_window("name=#{window_names[expectedWindows]}")
42
+ end
43
+ rescue => e
44
+ sleep(0.5)
45
+ # if exception continue
46
+ end
47
+ else
48
+ done = false
49
+ for wait in 1..15 do
50
+ begin
51
+ if @selenium.is_confirmation_present == true
52
+ @selenium.choose_ok_on_next_confirmation
53
+ @selenium.get_confirmation
54
+ end
55
+ window_names = @selenium.get_all_window_names()
56
+ #puts "Window Names: #{window_names}"
57
+ currentWindow = @selenium.get_eval("selenium.browserbot.getCurrentWindow().name")
58
+ #puts "Current Window1: " + currentWindow
59
+ if currentWindow != window_names[1]
60
+ if window_names[1] == "null"
61
+ #continue
62
+ else
63
+ @selenium.select_window("name=#{window_names[1]}")
64
+ done = true
65
+ break
66
+ end
67
+ else
68
+ if window_names[expectedWindows-1] == "null"
69
+ #continue
70
+ else
71
+ @selenium.select_window("name=#{window_names[expectedWindows-1]}")
72
+ done = true
73
+ break
74
+ end
75
+ end
76
+ rescue => e
77
+ sleep(0.5)
78
+ # if exception continue
79
+ end
80
+ end
81
+ if done == false
82
+ if @selenium.is_confirmation_present == true
83
+ @selenium.choose_ok_on_next_confirmation
84
+ @selenium.get_confirmation
85
+ end
86
+ #puts "Window1: #{window_names[window_names.length-1]}"
87
+ @selenium.select_window("name=#{window_names[window_names.length-1]}")
88
+ end
89
+ end
90
+ else
91
+ @selenium.open_window(url,"newWindow" + (expectedWindows-1).to_s)
92
+ sleep(2)
93
+ @selenium.select_window("newWindow" + (expectedWindows-1).to_s)
94
+ end
95
+ end
96
+ end
97
+ end
98
+
99
+
@@ -0,0 +1,11 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Button object used when no page load occurs after clicking.
4
+ # Subclass of Element.
5
+ class ButtonNonLoad < Element
6
+ # Clicks on object
7
+ def click
8
+ @selenium.click(@locator)
9
+ sleep(1)
10
+ end
11
+ end
@@ -0,0 +1,22 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Basic Checkbox object.
4
+ # Subclass of Element.
5
+ class Checkbox < Element
6
+ # Verifies if value of checkbox is checked or uncheck, then procedes to check/
7
+ # uncheck object, like user clicks on checkbox.
8
+ def click
9
+ boxChecked = self.value
10
+ if boxChecked
11
+ @selenium.uncheck(@locator)
12
+ else
13
+ @selenium.check(@locator)
14
+ end
15
+ end
16
+
17
+ # returns current value of object.
18
+ def value
19
+ return @selenium.is_checked(@locator)
20
+ end
21
+
22
+ end
@@ -0,0 +1,10 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Basic Checkbox object.
4
+ # Subclass of Element.
5
+ class Checkbox_Extjs < Element
6
+ def click
7
+ @selenium.mouse_down(@locator)
8
+ @selenium.click(@locator)
9
+ end
10
+ end
@@ -0,0 +1,24 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Basic Checkbox object.
4
+ # Subclass of Element.
5
+ class Checkbox_GWT < Element
6
+ # Verifies if value of checkbox is checked or uncheck, then procedes to check/
7
+ # uncheck object, like user clicks on checkbox.
8
+ def click
9
+ @selenium.click(@locator)
10
+ begin
11
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
12
+ rescue => e
13
+ #continue
14
+ sleep(4)
15
+ end
16
+ sleep(3)
17
+ end
18
+
19
+ # returns current value of object.
20
+ def value
21
+ return @selenium.is_checked(@locator)
22
+ end
23
+
24
+ end
@@ -0,0 +1,28 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Basic Dropdown object.
4
+ # Subclass of Element.
5
+ class Dropdown < Element
6
+ # Selects provided text value in object; based on option label
7
+ def select(text)
8
+ @selenium.select(@locator,"label=#{text}")
9
+ end
10
+
11
+ # Selects provided text value in object; based on option index
12
+ def selectIndex(text)
13
+ @selenium.select(@locator,"index=#{text}")
14
+ end
15
+
16
+ # Selects provided text value in object; based on option value
17
+ def selectValue(text)
18
+ @selenium.select(@locator,"value=#{text}")
19
+ end
20
+
21
+ def selectedText
22
+ return @selenium.get_selected_label(@locator)
23
+ end
24
+ end
25
+
26
+
27
+
28
+
@@ -0,0 +1,40 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ class DropdownAJax < Element
4
+
5
+ def select(text)
6
+ @selenium.select(@locator,"label=#{text}")
7
+ begin
8
+ @selenium.wait_for_ajax
9
+ rescue => e
10
+ #continue
11
+ end
12
+ sleep(4)
13
+ end
14
+
15
+ # Selects provided text value in object; based on option index
16
+ def selectIndex(text)
17
+ @selenium.select(@locator,"index=#{text}")
18
+ begin
19
+ @selenium.wait_for_ajax
20
+ rescue => e
21
+ #continue
22
+ end
23
+ sleep(4)
24
+ end
25
+
26
+ # Selects provided text value in object; based on option value
27
+ def selectValue(text)
28
+ @selenium.select(@locator,"value=#{text}")
29
+ begin
30
+ @selenium.wait_for_ajax
31
+ rescue => e
32
+ #continue
33
+ end
34
+ sleep(4)
35
+ end
36
+
37
+ def selectedText
38
+ return @selenium.get_selected_label(@locator)
39
+ end
40
+ end
@@ -0,0 +1,32 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ class Dropdown_Extjs < Element
4
+ def click
5
+ if /parentNode.id/.match(@locator) != nil
6
+ @locator = @locator.gsub('parentNode.id','childNodes[1].id')
7
+ @object_id = @selenium.get_eval(@locator)
8
+ @selenium.click(@object_id)
9
+ else
10
+ @selenium.click(@locator)
11
+ end
12
+ end
13
+
14
+ def select(text)
15
+ self.click
16
+
17
+ for wait in 1..60 do
18
+ begin
19
+ @selenium.click("//div[contains(@class, 'x-combo-list')]/descendant::div[contains(@class, 'x-combo-list-item')][text()='"+text+"']")
20
+ break
21
+ rescue => e
22
+ sleep(0.5)
23
+ end
24
+ end
25
+ end
26
+
27
+ def type(text)
28
+ self.click
29
+ @selenium.type(@locator, text)
30
+ @selenium.key_press(@locator, "\\9")
31
+ end
32
+ end
@@ -0,0 +1,40 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ class Dropdown_JQuery < Element
4
+
5
+ def select(text)
6
+ @selenium.select(@locator,"label=#{text}")
7
+ begin
8
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
9
+ rescue => e
10
+ #continue
11
+ end
12
+ sleep(4)
13
+ end
14
+
15
+ # Selects provided text value in object; based on option index
16
+ def selectIndex(text)
17
+ @selenium.select(@locator,"index=#{text}")
18
+ begin
19
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
20
+ rescue => e
21
+ #continue
22
+ end
23
+ sleep(4)
24
+ end
25
+
26
+ # Selects provided text value in object; based on option value
27
+ def selectValue(text)
28
+ @selenium.select(@locator,"value=#{text}")
29
+ begin
30
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
31
+ rescue => e
32
+ #continue
33
+ end
34
+ sleep(4)
35
+ end
36
+
37
+ def selectedText
38
+ return @selenium.get_selected_label(@locator)
39
+ end
40
+ end
@@ -0,0 +1,25 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ class DropdownLoad < Element
4
+ # Selects provided text value in object
5
+ def select(text)
6
+ @selenium.select(@locator,"label=#{text}")
7
+ @selenium.wait_for_page_to_load
8
+ end
9
+
10
+ # Selects provided text value in object; based on option index
11
+ def selectIndex(text)
12
+ @selenium.select(@locator,"index=#{text}")
13
+ @selenium.wait_for_page_to_load
14
+ end
15
+
16
+ # Selects provided text value in object; based on option value
17
+ def selectValue(text)
18
+ @selenium.select(@locator,"value=#{text}")
19
+ @selenium.wait_for_page_to_load
20
+ end
21
+
22
+ def selectedText
23
+ return @selenium.get_selected_label(@locator)
24
+ end
25
+ end
@@ -0,0 +1,172 @@
1
+ # Parent Class of all objects
2
+ class Element
3
+ # When initialized, waits for object to become present before proceding,
4
+ # if object does appear before wait time, test will fail.
5
+ def initialize(selenium, locator, parent_id=nil)
6
+ if @@TEST_FAILURE === true
7
+ fail "Step failed, due to previous step failing!"
8
+ end
9
+
10
+ object_id = nil
11
+ found = false
12
+ @selenium = selenium
13
+
14
+ # check to see if selenium_driver has been passed to element level from spec
15
+ begin
16
+ @selenium.host
17
+ rescue => e
18
+ fail "Error occurred: @selenium_driver not in element level"
19
+ end
20
+
21
+ if parent_id != nil
22
+ for wait in 1..60 do
23
+ begin
24
+ parent_id = @selenium.get_eval(parent_id)
25
+ break
26
+ rescue => e
27
+ sleep(0.5)
28
+ end
29
+ end
30
+ locator = locator.gsub('<EnterParentID>', parent_id)
31
+ end
32
+
33
+ for wait in 1..60 do
34
+ begin
35
+ # if statement used for objects with mulitple locator
36
+ if locator.is_a?(Array) == true
37
+ count = 0
38
+ while count <= locator.length and found == false
39
+ if /.browserbot/.match(locator[count])
40
+ for wait in 1..60 do
41
+ begin
42
+ object_id = @selenium.get_eval(locator)
43
+ found = true
44
+ break
45
+ rescue => e
46
+ sleep(0.5)
47
+ end
48
+ end
49
+ elsif @selenium.is_element_present(locator[count]) == false
50
+ sleep(0.5)
51
+ found = false
52
+ count += 1
53
+ else
54
+ found = true
55
+ @locator = locator[count]
56
+ break
57
+ end
58
+ end
59
+ else
60
+ if /.browserbot/.match(locator)
61
+ for wait in 1..60 do
62
+ begin
63
+ object_id = @selenium.get_eval(locator)
64
+ found = true
65
+ break
66
+ rescue => e
67
+ sleep(0.5)
68
+ end
69
+ end
70
+ elsif @selenium.is_element_present(locator) == false
71
+ sleep(0.5)
72
+ #puts "looking for object: #{locator}"
73
+ found = false
74
+ else
75
+ found = true
76
+ #puts "found object: #{locator}"
77
+ @locator = locator
78
+ break
79
+ end
80
+ end
81
+ rescue => e
82
+ # if exception continue
83
+ end
84
+ end
85
+
86
+ if found == false
87
+ @@TEST_FAILURE = true
88
+ fail "Step Failed - Object not found!"
89
+ end
90
+
91
+ @object_id = object_id
92
+ end
93
+
94
+ def waitForText(text)
95
+ for wait in 1..20 do
96
+ begin
97
+ if not @selenium_driver.is_text_present(text)
98
+ sleep(0.5)
99
+ else
100
+ break
101
+ end
102
+ rescue => e
103
+ # if exception continue
104
+ end
105
+ end
106
+ end
107
+ # returns text content of object
108
+ def text
109
+ if @object_id != nil
110
+ @text = @selenium.get_text(@object_id)
111
+ else
112
+ for wait in 1..20 do
113
+ begin
114
+ @text = @selenium.get_text(@locator)
115
+ break
116
+ rescue => e
117
+ sleep(0.5)
118
+ end
119
+ end
120
+ end
121
+ return @text
122
+ end
123
+
124
+ # returns value of object
125
+ def value
126
+ @value = @selenium.get_value(@locator)
127
+ return @value
128
+ end
129
+
130
+ # clicks on object
131
+ def click
132
+ @selenium.click(@locator)
133
+ #@selenium.wait_for_page_to_load
134
+ end
135
+
136
+ def hover
137
+ @selenium.mouse_over(@locator)
138
+ end
139
+
140
+ # returns true or false if object is visible
141
+ def visible
142
+ @visible = @selenium.is_visible(@locator)
143
+ return @visible
144
+ end
145
+
146
+ # returns true, no code needed, because initializing of object performs
147
+ # wait for object is present
148
+ def exist
149
+ return true
150
+ end
151
+
152
+ def qtipValue
153
+ return @selenium.get_eval("selenium.browserbot.findElement('#{@locator}').attributes[0].value")
154
+ end
155
+
156
+ def locator
157
+ return @locator
158
+ end
159
+
160
+ # double clicks on object
161
+ def doubleClick
162
+ @selenium.double_click(@locator)
163
+ end
164
+
165
+ def attribute(type)
166
+ return @selenium.get_attribute("#{@locator}@#{type}")
167
+ end
168
+
169
+ def rightClick
170
+ @selenium.context_menu(@locator)
171
+ end
172
+ end