selenium-rspec-dsl 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
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