zena 1.2.7 → 1.2.8

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 (407) hide show
  1. data/History.txt +80 -25
  2. data/Rakefile +2 -2
  3. data/app/controllers/columns_controller.rb +2 -2
  4. data/app/controllers/nodes_controller.rb +22 -29
  5. data/app/controllers/user_sessions_controller.rb +35 -10
  6. data/app/controllers/users_controller.rb +2 -2
  7. data/app/controllers/versions_controller.rb +2 -2
  8. data/app/models/group.rb +15 -1
  9. data/app/models/node.rb +109 -8
  10. data/app/models/role.rb +4 -0
  11. data/app/models/site.rb +64 -58
  12. data/app/models/template.rb +1 -1
  13. data/app/models/user.rb +135 -29
  14. data/app/models/user_session.rb +0 -1
  15. data/app/models/virtual_class.rb +11 -6
  16. data/app/views/columns/_form.html.erb +3 -1
  17. data/app/views/columns/_li.html.erb +1 -1
  18. data/app/views/columns/create.rjs +1 -1
  19. data/app/views/groups/_form.rhtml +16 -13
  20. data/app/views/relations/_form.erb +18 -6
  21. data/app/views/sites/_form.erb +12 -6
  22. data/app/views/users/_form.rhtml +23 -8
  23. data/app/views/users/_li.rhtml +14 -3
  24. data/app/views/users/index.rhtml +1 -1
  25. data/app/views/virtual_classes/_form.erb +12 -2
  26. data/app/views/zafu/default/Node-+login.zafu +8 -1
  27. data/app/views/zafu/default/Node-+search.zafu +1 -1
  28. data/bricks/acls/lib/bricks/acls.rb +1 -0
  29. data/bricks/acls/zena/migrate/20130903150356_longer_names_for_acl.rb +9 -0
  30. data/bricks/acls/zena/test/integration/acl_integration_test.rb +2 -2
  31. data/bricks/currency/lib/bricks/currency.rb +120 -0
  32. data/bricks/currency/zena/test/unit/currency_test.rb +43 -0
  33. data/bricks/fs_skin/lib/bricks/fs_skin.rb +1 -1
  34. data/bricks/fs_skin/zena/skins/blog/Node-+search.zafu +1 -1
  35. data/bricks/fs_skin/zena/skins/blog/Node.zafu +1 -1
  36. data/bricks/fs_skin/zena/test/unit/fs_skin_view_test.rb +35 -0
  37. data/bricks/pdf/lib/bricks/pdf.rb +1 -1
  38. data/bricks/sphinx/lib/bricks/sphinx.rb +2 -0
  39. data/bricks/sphinx/zena/init.rb +14 -0
  40. data/bricks/tags/zena/test/zafu/tags.yml +5 -1
  41. data/bricks/worker/lib/bricks/worker.rb +3 -2
  42. data/bricks/zena/zena/migrate/20130829093753_add_versioned_flag_to_column.rb +10 -0
  43. data/bricks/zena/zena/migrate/20130903084909_count_login_attempts.rb +11 -0
  44. data/bricks/zena/zena/migrate/20131104153126_index_fullpath.rb +10 -0
  45. data/bricks/zena/zena/migrate/20131104210011_rebuild_fullpath_after_change.rb +10 -0
  46. data/bricks/zena/zena/migrate/20131105160420_add_skin_id_to_sites.rb +9 -0
  47. data/bricks/zena/zena/migrate/20131105175822_add_profile_to_users.rb +11 -0
  48. data/bricks/zena/zena/migrate/20140213120038_fix_idx_scope.rb +13 -0
  49. data/bricks/zena/zena/migrate/20140628140247_add_site_readonly.rb +9 -0
  50. data/config/bricks.yml +8 -4
  51. data/config/gems.yml +5 -3
  52. data/db/init/base/skins/default/Node-+login.zafu +8 -1
  53. data/db/init/base/skins/default/Node-+search.zafu +1 -1
  54. data/lib/bricks/loader.rb +5 -5
  55. data/lib/gettext_strings.rb +3 -0
  56. data/lib/tasks/zena.rake +25 -22
  57. data/lib/zafu/process/context.rb +4 -0
  58. data/lib/zena/acts/secure_node.rb +3 -3
  59. data/lib/zena/app.rb +1 -0
  60. data/lib/zena/deploy.rb +1 -1
  61. data/lib/zena/deploy/template.rb +1 -1
  62. data/lib/zena/foxy_parser.rb +5 -2
  63. data/lib/zena/info.rb +1 -1
  64. data/lib/zena/site_worker.rb +2 -2
  65. data/lib/zena/test_controller.rb +5 -2
  66. data/lib/zena/use/action.rb +9 -2
  67. data/lib/zena/use/ajax.rb +20 -4
  68. data/lib/zena/use/ancestry.rb +89 -15
  69. data/lib/zena/use/authlogic.rb +8 -2
  70. data/lib/zena/use/context.rb +1 -0
  71. data/lib/zena/use/display.rb +1 -97
  72. data/lib/zena/use/forms.rb +28 -8
  73. data/lib/zena/use/html_tags.rb +16 -7
  74. data/lib/zena/use/i18n.rb +1 -1
  75. data/lib/zena/use/prop_eval.rb +6 -1
  76. data/lib/zena/use/query_node.rb +69 -4
  77. data/lib/zena/use/recursion.rb +1 -1
  78. data/lib/zena/use/refactor.rb +5 -2
  79. data/lib/zena/use/relations.rb +1 -0
  80. data/lib/zena/use/rendering.rb +7 -4
  81. data/lib/zena/use/test_helper.rb +8 -4
  82. data/lib/zena/use/upload.rb +14 -0
  83. data/lib/zena/use/urls.rb +39 -23
  84. data/lib/zena/use/version_hash.rb +5 -2
  85. data/lib/zena/use/workflow.rb +116 -70
  86. data/lib/zena/use/zafu_eval.rb +41 -0
  87. data/lib/zena/use/zafu_safe_definitions.rb +1 -0
  88. data/lib/zena/use/zafu_templates.rb +32 -26
  89. data/lib/zena/use/zazen.rb +8 -7
  90. data/locale/app.pot +5 -1
  91. data/locale/de/LC_MESSAGES/zena.mo +0 -0
  92. data/locale/de/zena.po +385 -281
  93. data/locale/en/LC_MESSAGES/zena.mo +0 -0
  94. data/locale/en/zena.po +378 -271
  95. data/locale/fr/LC_MESSAGES/zena.mo +0 -0
  96. data/locale/fr/zena.po +387 -272
  97. data/locale/it/LC_MESSAGES/zena.mo +0 -0
  98. data/locale/it/zena.po +433 -404
  99. data/locale/zena.pot +362 -268
  100. data/public/javascripts/grid.js +280 -104
  101. data/public/javascripts/zena.js +43 -15
  102. data/public/stylesheets/admin.css +8 -2
  103. data/public/stylesheets/grid.css +5 -2
  104. data/public/stylesheets/popup.css +1 -1
  105. data/test/fixtures/files/TestNode.zafu +51 -0
  106. data/test/functional/nodes_controller_test.rb +20 -5
  107. data/test/functional/user_sessions_controller_test.rb +41 -6
  108. data/test/functional/users_controller_test.rb +1 -2
  109. data/test/integration/navigation_test.rb +22 -4
  110. data/test/integration/query_node/basic.yml +7 -0
  111. data/test/integration/query_node/complex.yml +1 -1
  112. data/test/integration/query_node/errors.yml +1 -1
  113. data/test/integration/query_node/filters.yml +34 -1
  114. data/test/integration/query_node/relations.yml +6 -13
  115. data/test/integration/query_node_test.rb +22 -3
  116. data/test/integration/zafu_compiler/action.yml +1 -1
  117. data/test/integration/zafu_compiler/alias_site.yml +52 -0
  118. data/test/integration/zafu_compiler/complex.yml +1 -1
  119. data/test/integration/zafu_compiler/complex_ok.yml +5 -5
  120. data/test/integration/zafu_compiler/context.yml +1 -1
  121. data/test/integration/zafu_compiler/display.yml +56 -5
  122. data/test/integration/zafu_compiler/forms.yml +35 -2
  123. data/test/integration/zafu_compiler/meta.yml +4 -0
  124. data/test/integration/zafu_compiler/rubyless.yml +1 -1
  125. data/test/integration/zafu_compiler/safe_definitions.yml +4 -0
  126. data/test/integration/zafu_compiler/security.yml +10 -0
  127. data/test/integration/zafu_compiler/site.yml +5 -1
  128. data/test/integration/zafu_compiler/urls.yml +8 -2
  129. data/test/integration/zafu_compiler/zafu_attributes.yml +2 -1
  130. data/test/integration/zafu_compiler/zazen.yml +4 -0
  131. data/test/integration/zafu_compiler_test.rb +47 -4
  132. data/test/selenium/Grid/grid1.rsel +8 -8
  133. data/test/sites/complex/sites.yml +2 -2
  134. data/test/sites/complex/users.yml +1 -0
  135. data/test/sites/zena/columns.yml +4 -0
  136. data/test/sites/zena/sites.yml +1 -0
  137. data/test/sites/zena/users.yml +1 -0
  138. data/test/unit/node_test.rb +53 -5
  139. data/test/unit/note_test.rb +1 -1
  140. data/test/unit/relation_proxy_test.rb +20 -0
  141. data/test/unit/role_test.rb +2 -0
  142. data/test/unit/site_test.rb +28 -6
  143. data/test/unit/user_test.rb +332 -1
  144. data/test/unit/virtual_class_test.rb +55 -0
  145. data/test/unit/workflow_test.rb +175 -0
  146. data/test/unit/zena/use/ancestry_test.rb +52 -10
  147. data/test/unit/zena/use/prop_eval_test.rb +44 -0
  148. data/test/unit/zena/use/rendering_test.rb +48 -2
  149. data/test/unit/zena/use/upload_test.rb +15 -13
  150. data/test/unit/zena/use/urls_test.rb +1 -0
  151. data/vendor/plugins/ar_mysql_full_text/lib/ar_mysql_full_text.rb +39 -25
  152. data/zena.gemspec +69 -307
  153. metadata +143 -368
  154. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run 2.tmCommand +0 -24
  155. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run Context.tmCommand +0 -58
  156. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run Focused Should.tmCommand +0 -88
  157. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run.tmCommand +0 -27
  158. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/YAML to Shoulda.tmCommand +0 -23
  159. data/vendor/TextMate/Ruby Shoulda.tmbundle/Preferences/Symbol List: Context.tmPreferences +0 -19
  160. data/vendor/TextMate/Ruby Shoulda.tmbundle/Preferences/Symbol List: Should.tmPreferences +0 -19
  161. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory attributes for.tmSnippet +0 -16
  162. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory build.tmSnippet +0 -16
  163. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory.tmSnippet +0 -16
  164. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_define with class.tmSnippet +0 -18
  165. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_define.tmSnippet +0 -18
  166. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_next.tmSnippet +0 -16
  167. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_sequence.tmSnippet +0 -18
  168. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_bad_value.tmSnippet +0 -16
  169. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_contains.tmSnippet +0 -16
  170. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_does_not_contain.tmSnippet +0 -16
  171. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_good_value.tmSnippet +0 -16
  172. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_same_elements.tmSnippet +0 -16
  173. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_save.tmSnippet +0 -16
  174. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_sent_email.tmSnippet +0 -18
  175. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_valid.tmSnippet +0 -16
  176. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/association.tmSnippet +0 -17
  177. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/attribute.tmSnippet +0 -17
  178. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/before_should block.tmSnippet +0 -18
  179. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/context block get.tmSnippet +0 -22
  180. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/context block post.tmSnippet +0 -23
  181. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/context block with setup.tmSnippet +0 -25
  182. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/setup.tmSnippet +0 -18
  183. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should block with before proc.tmSnippet +0 -18
  184. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should block.tmSnippet +0 -18
  185. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_allow_values_for.tmSnippet +0 -16
  186. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_assign_to.tmSnippet +0 -16
  187. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_be_restful denied.tmSnippet +0 -20
  188. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_be_restful.tmSnippet +0 -20
  189. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_belong_to.tmSnippet +0 -16
  190. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_change by.tmSnippet +0 -16
  191. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_change from to.tmSnippet +0 -16
  192. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_length_at_least.tmSnippet +0 -16
  193. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_length_in_range.tmSnippet +0 -16
  194. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_length_is.tmSnippet +0 -16
  195. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_value_in_range.tmSnippet +0 -16
  196. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_eventually.tmSnippet +0 -18
  197. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_filter_params.tmSnippet +0 -16
  198. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_and_belong_to_many.tmSnippet +0 -16
  199. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_class_methods.tmSnippet +0 -16
  200. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_db_column.tmSnippet +0 -16
  201. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_db_columns.tmSnippet +0 -16
  202. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_index.tmSnippet +0 -16
  203. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_indices.tmSnippet +0 -16
  204. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_instance_methods.tmSnippet +0 -16
  205. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_many.tmSnippet +0 -16
  206. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_named_scope.tmSnippet +0 -16
  207. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_one.tmSnippet +0 -16
  208. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_readonly_attributes.tmSnippet +0 -16
  209. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_allow_mass_assignment_of.tmSnippet +0 -16
  210. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_allow_values_for.tmSnippet +0 -16
  211. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_assign_to.tmSnippet +0 -16
  212. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_change.tmSnippet +0 -16
  213. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_set_the_flash.tmSnippet +0 -16
  214. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_redirect_to.tmSnippet +0 -16
  215. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_a_form.tmSnippet +0 -16
  216. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_template.tmSnippet +0 -16
  217. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_with_layout.tmSnippet +0 -16
  218. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_without_layout.tmSnippet +0 -16
  219. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_respond_with.tmSnippet +0 -16
  220. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_respond_with_content_type.tmSnippet +0 -16
  221. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_return_from_session.tmSnippet +0 -16
  222. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_route.tmSnippet +0 -16
  223. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_set_the_flash_to.tmSnippet +0 -16
  224. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_acceptance_of.tmSnippet +0 -16
  225. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_numericality_of.tmSnippet +0 -16
  226. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_presence_of.tmSnippet +0 -16
  227. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_uniqueness_of with scope.tmSnippet +0 -16
  228. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_uniqueness_of.tmSnippet +0 -16
  229. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/catch_exception.rb +0 -39
  230. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/run_script.rb +0 -104
  231. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/stdin_dialog.rb +0 -14
  232. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/test.rb +0 -17
  233. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/todo.txt +0 -13
  234. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/bin/yaml_to_shoulda.rb +0 -25
  235. data/vendor/TextMate/Ruby Shoulda.tmbundle/Syntaxes/Ruby on Rails (Shoulda).tmLanguage +0 -166
  236. data/vendor/TextMate/Ruby Shoulda.tmbundle/info.plist +0 -304
  237. data/vendor/TextMate/Zena.tmbundle/Commands/Run all yaml tests.tmCommand +0 -37
  238. data/vendor/TextMate/Zena.tmbundle/Commands/Run focused yaml test.tmCommand +0 -52
  239. data/vendor/TextMate/Zena.tmbundle/Support/RubyMate/catch_exception.rb +0 -39
  240. data/vendor/TextMate/Zena.tmbundle/Support/RubyMate/run_script.rb +0 -118
  241. data/vendor/TextMate/Zena.tmbundle/Support/RubyMate/stdin_dialog.rb +0 -14
  242. data/vendor/TextMate/Zena.tmbundle/info.plist +0 -17
  243. data/vendor/plugins/selenium-on-rails/CHANGELOG +0 -125
  244. data/vendor/plugins/selenium-on-rails/LICENSE-2.0.txt +0 -202
  245. data/vendor/plugins/selenium-on-rails/README.md +0 -202
  246. data/vendor/plugins/selenium-on-rails/Rakefile +0 -38
  247. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumController.html +0 -265
  248. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumHelper.html +0 -148
  249. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails.html +0 -126
  250. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/FixtureLoader.html +0 -231
  251. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/PartialsSupport.html +0 -195
  252. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/Paths.html +0 -295
  253. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/RSelenese.html +0 -219
  254. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/Renderer.html +0 -156
  255. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/Selenese.html +0 -179
  256. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/SuiteRenderer.html +0 -223
  257. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilder.html +0 -441
  258. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderAccessors.html +0 -3098
  259. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderActions.html +0 -2080
  260. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderUserAccessors.html +0 -116
  261. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderUserActions.html +0 -116
  262. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRailsConfig.html +0 -150
  263. data/vendor/plugins/selenium-on-rails/doc/files/CHANGELOG.html +0 -422
  264. data/vendor/plugins/selenium-on-rails/doc/files/README.html +0 -321
  265. data/vendor/plugins/selenium-on-rails/doc/files/lib/controllers/selenium_controller_rb.html +0 -108
  266. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_helper_rb.html +0 -101
  267. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/acceptance_test_runner_rb.html +0 -222
  268. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/fixture_loader_rb.html +0 -109
  269. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/partials_support_rb.html +0 -111
  270. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/paths_rb.html +0 -101
  271. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/renderer_rb.html +0 -101
  272. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/rselenese_rb.html +0 -118
  273. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/selenese_rb.html +0 -101
  274. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/suite_renderer_rb.html +0 -101
  275. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/test_builder_accessors_rb.html +0 -114
  276. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/test_builder_actions_rb.html +0 -113
  277. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/test_builder_rb.html +0 -120
  278. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails_config_rb.html +0 -108
  279. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails_rb.html +0 -115
  280. data/vendor/plugins/selenium-on-rails/doc/fr_class_index.html +0 -42
  281. data/vendor/plugins/selenium-on-rails/doc/fr_file_index.html +0 -43
  282. data/vendor/plugins/selenium-on-rails/doc/fr_method_index.html +0 -182
  283. data/vendor/plugins/selenium-on-rails/doc/index.html +0 -24
  284. data/vendor/plugins/selenium-on-rails/doc/rdoc-style.css +0 -208
  285. data/vendor/plugins/selenium-on-rails/generators/selenium/USAGE +0 -19
  286. data/vendor/plugins/selenium-on-rails/generators/selenium/selenium_generator.rb +0 -50
  287. data/vendor/plugins/selenium-on-rails/generators/selenium/templates/rhtml.rhtml +0 -16
  288. data/vendor/plugins/selenium-on-rails/generators/selenium/templates/rselenese.rhtml +0 -14
  289. data/vendor/plugins/selenium-on-rails/generators/selenium/templates/selenese.rhtml +0 -11
  290. data/vendor/plugins/selenium-on-rails/init.rb +0 -15
  291. data/vendor/plugins/selenium-on-rails/lib/controllers/selenium_controller.rb +0 -122
  292. data/vendor/plugins/selenium-on-rails/lib/controllers/switch_environment_controller.rb +0 -16
  293. data/vendor/plugins/selenium-on-rails/lib/selenium_helper.rb +0 -8
  294. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails.rb +0 -11
  295. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/acceptance_test_runner.rb +0 -215
  296. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/fixture_loader.rb +0 -57
  297. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/partials_support.rb +0 -36
  298. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/paths.rb +0 -61
  299. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/renderer.rb +0 -20
  300. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/rselenese.rb +0 -44
  301. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/selenese.rb +0 -87
  302. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/suite_renderer.rb +0 -56
  303. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder.rb +0 -116
  304. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_accessors.rb +0 -1002
  305. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_actions.rb +0 -514
  306. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_user_accessors.rb.example +0 -91
  307. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_user_actions.rb.example +0 -24
  308. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails_config.rb +0 -30
  309. data/vendor/plugins/selenium-on-rails/lib/views/layouts/layout.rhtml +0 -18
  310. data/vendor/plugins/selenium-on-rails/lib/views/record.rhtml +0 -5
  311. data/vendor/plugins/selenium-on-rails/lib/views/selenium_helper.rb +0 -9
  312. data/vendor/plugins/selenium-on-rails/lib/views/setup.rhtml +0 -67
  313. data/vendor/plugins/selenium-on-rails/lib/views/test_suite.rhtml +0 -26
  314. data/vendor/plugins/selenium-on-rails/routes.rb +0 -24
  315. data/vendor/plugins/selenium-on-rails/selenium-core/Blank.html +0 -7
  316. data/vendor/plugins/selenium-on-rails/selenium-core/InjectedRemoteRunner.html +0 -8
  317. data/vendor/plugins/selenium-on-rails/selenium-core/RemoteRunner.html +0 -110
  318. data/vendor/plugins/selenium-on-rails/selenium-core/SeleniumLog.html +0 -109
  319. data/vendor/plugins/selenium-on-rails/selenium-core/TestPrompt.html +0 -145
  320. data/vendor/plugins/selenium-on-rails/selenium-core/TestRunner-splash.html +0 -55
  321. data/vendor/plugins/selenium-on-rails/selenium-core/TestRunner.hta +0 -177
  322. data/vendor/plugins/selenium-on-rails/selenium-core/TestRunner.html +0 -177
  323. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/butmin.gif +0 -0
  324. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/butplus.gif +0 -0
  325. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/domviewer.css +0 -298
  326. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/domviewer.html +0 -16
  327. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/selenium-domviewer.js +0 -205
  328. data/vendor/plugins/selenium-on-rails/selenium-core/icons/all.png +0 -0
  329. data/vendor/plugins/selenium-on-rails/selenium-core/icons/continue.png +0 -0
  330. data/vendor/plugins/selenium-on-rails/selenium-core/icons/continue_disabled.png +0 -0
  331. data/vendor/plugins/selenium-on-rails/selenium-core/icons/pause.png +0 -0
  332. data/vendor/plugins/selenium-on-rails/selenium-core/icons/pause_disabled.png +0 -0
  333. data/vendor/plugins/selenium-on-rails/selenium-core/icons/selected.png +0 -0
  334. data/vendor/plugins/selenium-on-rails/selenium-core/icons/step.png +0 -0
  335. data/vendor/plugins/selenium-on-rails/selenium-core/icons/step_disabled.png +0 -0
  336. data/vendor/plugins/selenium-on-rails/selenium-core/iedoc-core.xml +0 -1759
  337. data/vendor/plugins/selenium-on-rails/selenium-core/iedoc.xml +0 -1800
  338. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/cssQuery-p.js +0 -6
  339. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery-level2.js +0 -142
  340. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery-level3.js +0 -150
  341. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery-standard.js +0 -53
  342. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery.js +0 -356
  343. data/vendor/plugins/selenium-on-rails/selenium-core/lib/prototype.js +0 -2006
  344. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/builder.js +0 -101
  345. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/controls.js +0 -815
  346. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/dragdrop.js +0 -915
  347. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/effects.js +0 -958
  348. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/scriptaculous.js +0 -47
  349. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/slider.js +0 -283
  350. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/unittest.js +0 -383
  351. data/vendor/plugins/selenium-on-rails/selenium-core/lib/snapsie.js +0 -91
  352. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/find_matching_child.js +0 -69
  353. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/htmlutils.js +0 -1616
  354. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/injection.html +0 -72
  355. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-api.js +0 -3184
  356. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-browserbot.js +0 -2300
  357. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-browserdetect.js +0 -153
  358. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-commandhandlers.js +0 -377
  359. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-executionloop.js +0 -175
  360. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-logging.js +0 -148
  361. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-remoterunner.js +0 -695
  362. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-testrunner.js +0 -1362
  363. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-version.js +0 -5
  364. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/ui-doc.html +0 -803
  365. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/ui-element.js +0 -1537
  366. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/ui-map-sample.js +0 -979
  367. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/user-extensions.js +0 -3
  368. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/user-extensions.js.sample +0 -75
  369. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/xmlextras.js +0 -153
  370. data/vendor/plugins/selenium-on-rails/selenium-core/selenium-logo.png +0 -0
  371. data/vendor/plugins/selenium-on-rails/selenium-core/selenium-test.css +0 -43
  372. data/vendor/plugins/selenium-on-rails/selenium-core/selenium.css +0 -316
  373. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/dom.js +0 -566
  374. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/javascript-xpath-0.1.11.js +0 -2816
  375. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/util.js +0 -549
  376. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/xmltoken.js +0 -149
  377. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/xpath.js +0 -2450
  378. data/vendor/plugins/selenium-on-rails/tasks/test_acceptance.rake +0 -8
  379. data/vendor/plugins/selenium-on-rails/test/fixtures/config.yml +0 -37
  380. data/vendor/plugins/selenium-on-rails/test/fixtures/selenium.yml +0 -27
  381. data/vendor/plugins/selenium-on-rails/test/paths_test.rb +0 -72
  382. data/vendor/plugins/selenium-on-rails/test/renderer_test.rb +0 -157
  383. data/vendor/plugins/selenium-on-rails/test/rselenese_test.rb +0 -708
  384. data/vendor/plugins/selenium-on-rails/test/selenese_test.rb +0 -242
  385. data/vendor/plugins/selenium-on-rails/test/selenium_controller_test.rb +0 -67
  386. data/vendor/plugins/selenium-on-rails/test/selenium_on_rails_config_test.rb +0 -43
  387. data/vendor/plugins/selenium-on-rails/test/selenium_support_test.rb +0 -35
  388. data/vendor/plugins/selenium-on-rails/test/setup_test.rb +0 -31
  389. data/vendor/plugins/selenium-on-rails/test/suite_renderer_test.rb +0 -109
  390. data/vendor/plugins/selenium-on-rails/test/switch_environment_controller_test.rb +0 -17
  391. data/vendor/plugins/selenium-on-rails/test/test_builder_functions_authortest.rb +0 -51
  392. data/vendor/plugins/selenium-on-rails/test/test_helper.rb +0 -101
  393. data/vendor/plugins/selenium-on-rails/test_data/_partial.rsel +0 -1
  394. data/vendor/plugins/selenium-on-rails/test_data/own_layout.html +0 -12
  395. data/vendor/plugins/selenium-on-rails/test_data/partials/_html.html +0 -6
  396. data/vendor/plugins/selenium-on-rails/test_data/partials/_nesting.rsel +0 -2
  397. data/vendor/plugins/selenium-on-rails/test_data/partials/_rhtml.rhtml +0 -6
  398. data/vendor/plugins/selenium-on-rails/test_data/partials/_rsel.rsel +0 -1
  399. data/vendor/plugins/selenium-on-rails/test_data/partials/_sel.sel +0 -5
  400. data/vendor/plugins/selenium-on-rails/test_data/partials/all_partials.rsel +0 -5
  401. data/vendor/plugins/selenium-on-rails/test_data/rhtml.rhtml +0 -7
  402. data/vendor/plugins/selenium-on-rails/test_data/rselenese.rsel +0 -8
  403. data/vendor/plugins/selenium-on-rails/test_data/selenese.sel +0 -7
  404. data/vendor/plugins/selenium-on-rails/test_data/suite_one/subsuite/suite_one_subsuite_testcase.sel +0 -1
  405. data/vendor/plugins/selenium-on-rails/test_data/suite_one/suite_one_testcase1.sel +0 -1
  406. data/vendor/plugins/selenium-on-rails/test_data/suite_one/suite_one_testcase2.sel +0 -1
  407. data/vendor/plugins/selenium-on-rails/test_data/suite_two/suite_two_testcase.sel +0 -1
@@ -1,8 +0,0 @@
1
- task :test_acceptance => 'test:acceptance'
2
- namespace :test do
3
- desc 'Run Selenium tests in all browsers'
4
- task :acceptance do
5
- require File.dirname(__FILE__) + '/../lib/selenium_on_rails/acceptance_test_runner'
6
- SeleniumOnRails::AcceptanceTestRunner.new.run
7
- end
8
- end
@@ -1,37 +0,0 @@
1
- # Please read as our directions have changed:
2
- # Move this file to your rails apps config directory and rename it to selenium.yml in order to configure the plugin
3
-
4
- #
5
- # General settings
6
- #
7
-
8
- environments:
9
- - test
10
- # - development # Uncomment this line to enable in development environment. N.B. your development database will likely be altered/destroyed/abducted
11
-
12
- #selenium_path: 'c:\selenium' #path to selenium installation. only needed if you for some reason don't want to use the bundled version of selenium core
13
-
14
- #
15
- # rake test:acceptance settings
16
- #
17
-
18
- browsers:
19
- # Windows
20
- # firefox: 'c:\Program Files\Mozilla Firefox\firefox.exe'
21
- # ie: 'c:\Program Files\Internet Explorer\iexplore.exe'
22
-
23
- # Mac OS X
24
- firefox: '/Applications/Firefox.app/Contents/MacOS/firefox-bin'
25
- safari: '/Applications/Safari.app/Contents/MacOS/Safari'
26
-
27
- #host: 'localhost'
28
- #port_start: 3000
29
- #port_end: 3005
30
- #base_url_path: '/'
31
- #max_browser_duration: 120
32
- #multi_window: false
33
-
34
- #result_dir: 'c:\result' # the directory where the results will be stored after a test:acceptance run
35
-
36
- #fixtures_path: <%= "#{RAILS_ROOT}/spec/fixtures" %>
37
- #selenium_tests_path: <%= "#{RAILS_ROOT}/spec/selenium" %>
@@ -1,27 +0,0 @@
1
- # Move this file to your rails apps config directory and rename it to selenium.yml in order to configure the plugin
2
-
3
- #
4
- # General settings
5
- #
6
-
7
- environments:
8
- - test_cache
9
- # - development # Uncomment this line to enable in development environment. N.B. your development database will likely be altered/destroyed/abducted
10
-
11
- #selenium_path: 'c:\selenium' #path to selenium installation. only needed if you for some reason don't want to use the bundled version of selenium core
12
-
13
- #
14
- # rake test:acceptance settings
15
- #
16
-
17
- browsers:
18
- firefox: 'script/openfirefox'
19
- # safari: '/Applications/Safari.app/Contents/MacOS/Safari'
20
-
21
- port_start: 4000
22
- port_end: 4001
23
- #base_url_path: '/'
24
- #max_browser_duration: 120
25
- #multi_window: false
26
-
27
- #result_dir: 'c:\result' # the directory where the results will be stored after a test:acceptance run
@@ -1,72 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper'
2
- require 'mocha'
3
- RAILS_ROOT = File.expand_path(File.dirname(__FILE__) + "/")
4
-
5
- class SeleniumOnRails::PathsTest < Test::Unit::TestCase
6
-
7
- include SeleniumOnRails::Paths
8
-
9
- def test_selenium_tests_path_when_config_has_not_selenium_tests_path
10
- SeleniumOnRailsConfig.expects(:get).with("selenium_tests_path").returns(nil)
11
- assert_equal "#{RAILS_ROOT}/test/selenium", selenium_tests_path
12
- end
13
-
14
- def test_selenium_tests_path_when_config_has_selenium_tests_path
15
- SeleniumOnRailsConfig.expects(:get).with("selenium_tests_path").returns("path").at_least_once
16
- assert_equal "path", selenium_tests_path
17
- end
18
-
19
- def test_fixtures_path_when_config_has_not_fixtures_path
20
- SeleniumOnRailsConfig.expects(:get).with("fixtures_path").returns(nil)
21
- assert_equal "#{RAILS_ROOT}/test/fixtures", fixtures_path
22
- end
23
-
24
- def test_fixtures_path_when_config_has_fixtures_path
25
- SeleniumOnRailsConfig.expects(:get).with("fixtures_path").returns("path").at_least_once
26
- assert_equal "path", fixtures_path
27
- end
28
-
29
- def test_view_path
30
- assert_equal File.expand_path("#{RAILS_ROOT}/../lib/views/my_view"), view_path('my_view')
31
- end
32
-
33
- def test_layout_path
34
- assert_equal "layout.rhtml", layout_path
35
- end
36
-
37
- def test_skip_file_when_file_contain_CVS
38
- assert skip_file?("file/with/CVS/in/the/middle/of/path")
39
- end
40
-
41
- def test_skip_file_when_file_contain_dot
42
- assert skip_file?("file/with/./(dot)/in/the/middle/of/path")
43
- end
44
-
45
- def test_skip_file_when_file_contain_underline
46
- assert skip_file?("file/with/_underline/in/the/middle/of/path")
47
- end
48
-
49
- def test_skip_file_when_file_contain_accent_mark
50
- assert skip_file?("file/with/mark~/in/the/middle/of/path")
51
- end
52
-
53
- def test_skip_file_when_file_does_not_have_any_reason_to_skip
54
- assert !skip_file?("my/valid/file")
55
- end
56
-
57
- def test_selenium_path
58
- assert_equal File.expand_path("#{RAILS_ROOT}/../selenium-core") + "/", selenium_path
59
- end
60
-
61
- def test_selenium_path_when_selenium_core_installation_is_not_found
62
- selenium_core_path = File.expand_path(File.dirname(__FILE__) + "/../selenium-core")
63
-
64
- File.expects(:exist?).with("#{selenium_core_path}/core/TestRunner.html").returns(false)
65
- File.expects(:exist?).with("#{selenium_core_path}/selenium/TestRunner.html").returns(false)
66
- File.expects(:exist?).with("#{selenium_core_path}/javascript/TestRunner.html").returns(false)
67
- File.expects(:exist?).with("#{selenium_core_path}/TestRunner.html").returns(false)
68
- @@selenium_path = nil
69
- assert_raise(RuntimeError) { selenium_path }
70
- end
71
-
72
- end
@@ -1,157 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper'
2
-
3
- class RendererTest < Test::Unit::TestCase
4
- def setup
5
- SeleniumOnRails::PartialsSupport.send(:include, SeleniumOnRails::PathsTestHelper)
6
- @controller = SeleniumController.new
7
- @controller.extend(SeleniumOnRails::PathsTestHelper)
8
- ActionController::Routing::Routes.draw
9
- @request = ActionController::TestRequest.new
10
- @response = ActionController::TestResponse.new
11
- @controller.layout_override =<<END
12
- <html><head><title>test layout</title></head><body>
13
- @content_for_layout
14
- </body></html>
15
- END
16
- end
17
-
18
- def test_route
19
- get :test_file, :testname => 'html.html' #initialize the controller
20
- assert_equal 'http://test.host/selenium/tests/suite%2Ftest_case.sel',
21
- @controller.url_for(:controller => 'selenium', :action => 'test_file', :testname => 'suite/test_case.sel')
22
- end
23
-
24
- def test_html
25
- expected =<<END
26
- <html><head><title>test layout</title></head><body>
27
- <p>Testing plain HTML</p>
28
- <table>
29
- <tr><th colspan="3">Test HTML</th></tr>
30
- <tr><td>open</td><td>/selenium/setup</td><td>&nbsp;</td></tr>
31
- </table>
32
- <p>and it works...</p>
33
- </body></html>
34
- END
35
- File.open(test_path_for('html.html'), 'w+') { |index_file| index_file << expected }
36
- get :test_file, :testname => 'html.html'
37
- assert_headers
38
-
39
- assert_text_equal expected, @response.body
40
- end
41
-
42
- def test_path_for(name)
43
- "#{File.expand_path(File.dirname(__FILE__) + "/../test_data")}/#{name}"
44
- end
45
-
46
- def test_rhtml
47
- get :test_file, :testname => 'rhtml.rhtml'
48
- assert_headers
49
- expected =<<END
50
- <html><head><title>test layout</title></head><body>
51
- <table>
52
- <tr><th colspan="3">Rhtml</th></tr>
53
- <tr><td>open</td><td>/fi</td><td>&nbsp;</td></tr>
54
- <tr><td>open</td><td>/fo</td><td>&nbsp;</td></tr>
55
- <tr><td>open</td><td>/fum</td><td>&nbsp;</td></tr>
56
- <tr><td>assertTitle</td><td>Partial from RHTML</td><td>&nbsp;</td></tr>
57
- </table>
58
- </body></html>
59
- END
60
- assert_text_equal expected, @response.body
61
- end
62
-
63
- def test_selenese
64
- get :test_file, :testname => 'selenese.sel'
65
-
66
- assert_headers
67
- expected =<<END
68
- <html><head><title>test layout</title></head><body>
69
- <p>Selenese <strong>support</strong></p>
70
- <table>
71
- <tr><th colspan="3">Selenese</th></tr>
72
- <tr><td>open</td><td>/selenium/setup</td><td>&nbsp;</td></tr>
73
- <tr><td>goBack</td><td>&nbsp;</td><td>&nbsp;</td></tr>
74
- <tr><td>assertTitle</td><td>Partial from Selenese</td><td>&nbsp;</td></tr>
75
- </table>
76
- <p>works.</p>
77
-
78
- </body></html>
79
- END
80
- assert_text_equal expected, @response.body
81
- end
82
-
83
- def test_rselenese
84
- get :test_file, :testname => 'rselenese.rsel'
85
- assert_headers
86
- expected = <<END
87
- <html><head><title>test layout</title></head><body>
88
- <table>
89
- <tr><th colspan="3">Rselenese</th></tr>
90
- <tr><td>open</td><td>/selenium/setup</td><td>&nbsp;</td></tr>
91
- <tr><td>open</td><td>/selenium/setup?keep_session=true</td><td>&nbsp;</td></tr>
92
- <tr><td>open</td><td>/selenium/setup?fixtures=all</td><td>&nbsp;</td></tr>
93
- <tr><td>open</td><td>/selenium/setup?fixtures=foo%2Cbar</td><td>&nbsp;</td></tr>
94
- <tr><td>open</td><td>/selenium/setup?clear_tables=foo%2Cbar&amp;amp;fixtures=all</td><td>&nbsp;</td></tr>
95
- <tr><td>assertAbsoluteLocation</td><td>exact:http://test.host/selenium/setup</td><td>&nbsp;</td></tr>
96
- <tr><td>assertTitle</td><td>selenium</td><td>&nbsp;</td></tr>
97
- <tr><td>assertTitle</td><td>Partial from RSelenese</td><td>&nbsp;</td></tr>
98
- </table>
99
- </body></html>
100
- END
101
- assert_text_equal expected, @response.body
102
- end
103
-
104
- def test_partial_support
105
- get :test_file, :testname => 'partials/all_partials.rsel'
106
- assert_headers
107
- expected = <<END
108
- <html><head><title>test layout</title></head><body>
109
- <table>
110
- <tr><th colspan="3">All partials</th></tr>
111
- <tr><td>assertTitle</td><td>Partial from All partials</td><td>&nbsp;</td></tr>
112
- <tr><td>type</td><td>partial</td><td>HTML partial</td></tr>
113
- <tr><td>type</td><td>world</td><td>RHTML partial</td></tr>
114
- <tr><td>type</td><td>partial</td><td>Selenese partial</td></tr>
115
- <tr><td>type</td><td>world</td><td>RSelenese partial</td></tr>
116
- <tr><td>type</td><td>nesting</td><td>Nesting partial</td></tr>
117
- <tr><td>type</td><td>dlrow</td><td>RSelenese partial</td></tr>
118
- </table>
119
- </body></html>
120
- END
121
- assert_text_equal expected, @response.body
122
- end
123
-
124
- def test_own_layout
125
- get :test_file, :testname => 'own_layout.html'
126
- assert_headers
127
- expected =<<END
128
- <html>
129
- <head>
130
- <title>Test case with own layout</title>
131
- <style type="text/css"> body { background-color: #ccc; } </style>
132
- </head>
133
- <body>
134
- <table>
135
- <tr><th colspan="3">Test own layout</th></tr>
136
- <tr><td>open</td><td>/selenium/setup</td><td>&nbsp;</td></tr>
137
- </table>
138
- </body>
139
- </html>
140
- END
141
- assert_text_equal expected, @response.body
142
- end
143
-
144
- def test_not_found
145
- get :test_file, :testname => 'missing'
146
- assert_response 404
147
- assert_equal 'Not found', @response.body
148
- end
149
-
150
- def assert_headers
151
- assert_response :success
152
- assert_equal 'no-cache', @response.headers['Cache-control']
153
- assert_equal 'no-cache', @response.headers['Pragma']
154
- assert_equal '-1', @response.headers['Expires']
155
- end
156
-
157
- end
@@ -1,708 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper'
2
-
3
- class RSeleneseTest < Test::Unit::TestCase
4
- include ERB::Util
5
-
6
- # All this is exactly the same as selenese - with an r in front of it. How do I kill the duplication
7
-
8
- def render_rselenese(page_title, input)
9
- create_rsel_file_from(input, "html.rsel")
10
-
11
- @view = TestView.new
12
- @view.extend(SeleniumOnRails::PathsTestHelper)
13
- @sel = SeleniumOnRails::RSelenese.new(@view)
14
- @sel.render ActionView::Template.new(test_path_for("html.rsel")), {'page_title' => page_title}
15
- end
16
-
17
- def create_rsel_file_from(input, name)
18
- File.open(test_path_for(name), 'w+') { |index_file| index_file << input }
19
- end
20
-
21
- def test_path_for(name)
22
- "#{File.expand_path(File.dirname(__FILE__) + "/../test_data")}/#{name}"
23
- end
24
-
25
- def assert_rselenese expected, name, input
26
- assert_text_equal expected, render_rselenese(name, input)
27
- end
28
-
29
- def test_empty
30
- expected = <<END
31
- <table>
32
- <tr><th colspan="3">Empty</th></tr>
33
- </table>
34
- END
35
- input = ''
36
- assert_rselenese expected, 'Empty', input
37
- end
38
-
39
- def assert_generates_command expected, name, *args
40
- expected = expected.map {|v| h(v) }
41
- expected << '&nbsp;' while expected.length < 3
42
- expected = expected.map {|v| "<td>#{v}</td>" }.join
43
- expected_html = <<END
44
- <table>
45
- <tr><th colspan="3">Selenese Commands</th></tr>
46
- <tr>#{expected}</tr>
47
- </table>
48
- END
49
- args_str = args.map {|a| a.inspect }.join(',')
50
- input = "#{name}(#{args_str})"
51
- assert_rselenese expected_html, 'Selenese Commands', input
52
- end
53
-
54
- def test_render_rselenese_without_locals
55
- expected_html = <<END
56
- <table>
57
- <tr><th colspan="3"></th></tr>
58
- </table>
59
- END
60
- create_rsel_file_from('', "html.rsel")
61
-
62
- @view = TestView.new
63
- @view.extend(SeleniumOnRails::PathsTestHelper)
64
- @sel = SeleniumOnRails::RSelenese.new(@view)
65
-
66
- assert_text_equal expected_html, @sel.render(ActionView::Template.new(test_path_for("html.rsel")))
67
- end
68
-
69
- def test_element_locators
70
- assert_generates_command %w{click aCheckbox}, :click, 'aCheckbox'
71
- assert_generates_command %w{click document.foo}, :click, 'document.foo'
72
- # assert_generates_command %w{click //a}, :click, '//a'
73
- end
74
-
75
- def test_collection_arguments
76
- # assert_generates_command ['assertAllLinks', 'link1,link2,link3'], :assert_all_links, ['link1', 'link2','link3']
77
- # assert_generates_command ['assertAllLinks', 'link?,link?,link?'], :assert_all_links, 'link?,link?,link?'
78
- end
79
-
80
- ARG_VALUE_MAP = {
81
- # We can't test url_for style arguments here, because we don't have
82
- # a valid controller to interpret them. See RendererTest.
83
- :url => '/relative/url',
84
- :string => '1234',
85
- :pattern => 'glob:J* Smith', # Also: many other formats.
86
- :dimension => '10',
87
- :variable => 'varname',
88
- :locator => 'foo',
89
- :coord_string => '10,20',
90
- :movements_string => '+70,-300',
91
- :script => 'script',
92
- :attribute_name => 'attribute',
93
- :locator_and_attribute_name => [['foo', 'attribute'], 'foo@attribute'],
94
- :table_locator => [['table', 2, 4], 'table.2.4'],
95
- :coll_pattern => [[['a', "b\\", 'c,']], "a,b\\\\,c\\,"],
96
- :event_name => 'eventName',
97
- :keycode => 123,
98
- :option_locator => 'label=hello',
99
- :window_id => [[nil], 'null'],
100
- :window_name => 'myWindow',
101
- :timeout => 123,
102
- :integer => 1,
103
- :log_level => :debug,
104
- :name_value_pair => 'name=value',
105
- :options_string => 'path=/path/, max_age=60'
106
- }
107
-
108
- # Call _command_ with _args_ and make sure it produces a good table.
109
- # If the input command doesn't 'selenize' cleanly (e.g. if the input command
110
- # is :do_foo and the expected result is +dofoo+ and not +doFoo+) +command+
111
- # can be specified as an array (e.g. +[:input_command, 'expectedResult']+).
112
- def assert_command_works command, *args
113
- expected_values = args.inject([]) do |c, arg|
114
- v = ARG_VALUE_MAP[arg]
115
- if v.is_a? Array
116
- c << v[1]
117
- else
118
- c << v
119
- end
120
- end
121
- input_values = args.inject([]) do |c, arg|
122
- v = ARG_VALUE_MAP[arg]
123
- if v.is_a? Array
124
- c.concat v[0]
125
- else
126
- c << v
127
- end
128
- end
129
- input_name, expected_name = (command.is_a?(Array) ? command : [command, SeleniumOnRails::TestBuilder.selenize(command.to_s)])
130
- assert_generates_command [expected_name]+expected_values, input_name.to_s, *input_values
131
- end
132
-
133
- def test_action_commands
134
- assert_command_works [:brake, 'break']
135
- assert_command_works :create_cookie, :name_value_pair, :options_string
136
- assert_command_works :delete_cookie, :string, :string
137
- assert_command_works :double_click, :locator
138
- assert_command_works :double_click_at, :locator, :coord_string
139
- assert_command_works :drag_and_drop, :locator, :movements_string
140
- assert_command_works :drag_and_drop_to_object, :locator, :locator
141
- assert_command_works :echo, :string
142
- assert_command_works :highlight, :locator
143
- assert_command_works :meta_key_down
144
- assert_command_works :meta_key_up
145
- assert_command_works :mouse_down_at, :locator, :coord_string
146
- assert_command_works :mouse_move, :locator
147
- assert_command_works :mouse_move_at, :locator, :coord_string
148
- assert_command_works :mouse_out, :locator
149
- assert_command_works :mouse_up, :locator
150
- assert_command_works :mouse_up_at, :locator, :coord_string
151
- assert_command_works :open_window, :url, :integer
152
- assert_command_works :pause, :timeout
153
- assert_command_works :remove_all_selections, :locator
154
- assert_command_works :select_frame, :locator
155
- assert_command_works :set_cursor_position, :locator, :integer
156
- assert_command_works :set_mouse_speed, :integer
157
- assert_command_works :shift_key_down
158
- assert_command_works :shift_key_up
159
- assert_command_works :store, :script, :variable
160
- assert_command_works :type_keys, :locator, :string
161
- assert_command_works :window_focus, :window_name
162
- assert_command_works :window_maximize, :window_name
163
- assert_command_works :click, :locator
164
- assert_command_works :click_and_wait, :locator
165
- assert_command_works :click_at, :locator, :coord_string
166
- assert_command_works :fire_event, :locator, :event_name
167
- assert_command_works :fire_event_and_wait, :locator, :event_name
168
- assert_command_works :key_press, :locator, :keycode
169
- assert_command_works :key_press_and_wait, :locator, :keycode
170
- assert_command_works :key_down, :locator, :keycode
171
- assert_command_works :key_down_and_wait, :locator, :keycode
172
- assert_command_works :key_up, :locator, :keycode
173
- assert_command_works :key_up_and_wait, :locator, :keycode
174
- assert_command_works :alt_key_down
175
- assert_command_works :alt_key_up
176
- assert_command_works :control_key_down
177
- assert_command_works :control_key_up
178
- assert_command_works :mouse_over, :locator
179
- assert_command_works :mouse_over_and_wait, :locator
180
- assert_command_works :mouse_down, :locator
181
- assert_command_works :mouse_down_and_wait, :locator
182
- assert_command_works :type, :locator, :string
183
- assert_command_works :type_and_wait, :locator, :string
184
- assert_command_works :check, :locator
185
- assert_command_works :check_and_wait, :locator
186
- assert_command_works :uncheck, :locator
187
- assert_command_works :uncheck_and_wait, :locator
188
- assert_command_works :select, :locator, :option_locator
189
- assert_command_works :select_and_wait, :locator, :option_locator
190
- assert_command_works :add_selection, :locator, :option_locator
191
- assert_command_works :add_selection_and_wait, :locator, :option_locator
192
- assert_command_works :remove_selection, :locator, :option_locator
193
- assert_command_works :remove_selection_and_wait, :locator, :option_locator
194
- assert_command_works :submit, :locator
195
- assert_command_works :open, :url
196
- assert_command_works :select_window, :window_id
197
- assert_command_works [:wait_for_popup, 'waitForPopUp'], :window_id, :timeout
198
- assert_command_works :choose_cancel_on_next_confirmation
199
- assert_command_works :choose_cancel_on_next_confirmation_and_wait
200
- assert_command_works :answer_on_next_prompt, :string
201
- assert_command_works :answer_on_next_prompt_and_wait, :string
202
- assert_command_works :go_back
203
- assert_command_works :refresh
204
- assert_command_works :close
205
- assert_command_works :set_context, :string
206
- assert_command_works :set_context, :string, :log_level
207
- assert_command_works :wait_for_condition, :script, :timeout
208
- assert_command_works :set_timeout, :timeout
209
- assert_command_works :wait_for_page_to_load, :timeout
210
- end
211
-
212
- # This is bad. They can be their own tests.
213
- def test_accessor_commands
214
- assert_command_works :store_alert_present, :variable
215
- assert_command_works :assert_alert_present
216
- assert_command_works :assert_alert_not_present
217
- assert_command_works :verify_alert_present
218
- assert_command_works :verify_alert_not_present
219
- assert_command_works :wait_for_alert_present
220
- assert_command_works :wait_for_alert_not_present
221
-
222
- assert_command_works :store_prompt_present, :variable
223
- assert_command_works :assert_prompt_present
224
- assert_command_works :assert_prompt_not_present
225
- assert_command_works :verify_prompt_present
226
- assert_command_works :verify_prompt_not_present
227
- assert_command_works :wait_for_prompt_present
228
- assert_command_works :wait_for_prompt_not_present
229
-
230
- assert_command_works :store_confirmation_present, :variable
231
- assert_command_works :assert_confirmation_present
232
- assert_command_works :assert_confirmation_not_present
233
- assert_command_works :verify_confirmation_present
234
- assert_command_works :verify_confirmation_not_present
235
- assert_command_works :wait_for_confirmation_present
236
- assert_command_works :wait_for_confirmation_not_present
237
-
238
- assert_command_works :store_alert, :variable
239
- assert_command_works :assert_alert, :pattern
240
- assert_command_works :assert_not_alert, :pattern
241
- assert_command_works :verify_alert, :pattern
242
- assert_command_works :verify_not_alert, :pattern
243
- assert_command_works :wait_for_alert, :pattern
244
- assert_command_works :wait_for_not_alert, :pattern
245
-
246
- assert_command_works :store_confirmation, :variable
247
- assert_command_works :assert_confirmation, :pattern
248
- assert_command_works :assert_not_confirmation, :pattern
249
- assert_command_works :verify_confirmation, :pattern
250
- assert_command_works :verify_not_confirmation, :pattern
251
- assert_command_works :wait_for_confirmation, :pattern
252
- assert_command_works :wait_for_not_confirmation, :pattern
253
-
254
- assert_command_works :store_prompt, :variable
255
- assert_command_works :assert_prompt, :pattern
256
- assert_command_works :assert_not_prompt, :pattern
257
- assert_command_works :verify_prompt, :pattern
258
- assert_command_works :verify_not_prompt, :pattern
259
- assert_command_works :wait_for_prompt, :pattern
260
- assert_command_works :wait_for_not_prompt, :pattern
261
-
262
- assert_command_works :store_absolute_location, :variable
263
- assert_command_works :assert_absolute_location, :url
264
- assert_command_works :assert_not_absolute_location, :url
265
- assert_command_works :verify_absolute_location, :url
266
- assert_command_works :verify_not_absolute_location, :url
267
- assert_command_works :wait_for_absolute_location, :url
268
- assert_command_works :wait_for_not_absolute_location, :url
269
-
270
- assert_command_works :store_location, :pattern, :variable
271
- assert_command_works :assert_location, :url
272
- assert_command_works :assert_not_location, :url
273
- assert_command_works :verify_location, :url
274
- assert_command_works :verify_not_location, :url
275
- assert_command_works :wait_for_location, :url
276
- assert_command_works :wait_for_not_location, :url
277
-
278
- assert_command_works :store_title, :variable
279
- assert_command_works :assert_title, :pattern
280
- assert_command_works :assert_not_title, :pattern
281
- assert_command_works :verify_title, :pattern
282
- assert_command_works :verify_not_title, :pattern
283
- assert_command_works :wait_for_title, :pattern
284
- assert_command_works :wait_for_not_title, :pattern
285
-
286
- assert_command_works :store_body_text, :variable
287
- assert_command_works :assert_body_text, :pattern
288
- assert_command_works :assert_not_body_text, :pattern
289
- assert_command_works :verify_body_text, :pattern
290
- assert_command_works :verify_not_body_text, :pattern
291
- assert_command_works :wait_for_body_text, :pattern
292
- assert_command_works :wait_for_not_body_text, :pattern
293
-
294
- assert_command_works :store_value, :locator, :variable
295
- assert_command_works :assert_value, :locator, :pattern
296
- assert_command_works :assert_not_value, :locator, :pattern
297
- assert_command_works :verify_value, :locator, :pattern
298
- assert_command_works :verify_not_value, :locator, :pattern
299
- assert_command_works :wait_for_value, :locator, :pattern
300
- assert_command_works :wait_for_not_value, :locator, :pattern
301
-
302
- assert_command_works :store_text, :locator, :variable
303
- assert_command_works :assert_text, :locator, :pattern
304
- assert_command_works :assert_not_text, :locator, :pattern
305
- assert_command_works :verify_text, :locator, :pattern
306
- assert_command_works :verify_not_text, :locator, :pattern
307
- assert_command_works :wait_for_text, :locator, :pattern
308
- assert_command_works :wait_for_not_text, :locator, :pattern
309
-
310
- assert_command_works :store_eval, :script, :variable
311
- assert_command_works :assert_eval, :script, :pattern
312
- assert_command_works :assert_not_eval, :script, :pattern
313
- assert_command_works :verify_eval, :script, :pattern
314
- assert_command_works :verify_not_eval, :script, :pattern
315
- assert_command_works :wait_for_eval, :script, :pattern
316
- assert_command_works :wait_for_not_eval, :script, :pattern
317
-
318
- assert_command_works :store_checked, :locator, :variable
319
- assert_command_works :assert_checked, :locator
320
- assert_command_works :assert_not_checked, :locator
321
- assert_command_works :verify_checked, :locator
322
- assert_command_works :verify_not_checked, :locator
323
- assert_command_works :wait_for_checked, :locator
324
- assert_command_works :wait_for_not_checked, :locator
325
-
326
- assert_command_works :store_table, :table_locator, :variable
327
- assert_command_works :assert_table, :table_locator, :pattern
328
- assert_command_works :assert_not_table, :table_locator, :pattern
329
- assert_command_works :verify_table, :table_locator, :pattern
330
- assert_command_works :verify_not_table, :table_locator, :pattern
331
- assert_command_works :wait_for_table, :table_locator, :pattern
332
- assert_command_works :wait_for_not_table, :table_locator, :pattern
333
-
334
- assert_raise RuntimeError do
335
- assert_command_works :store_selected, :locator, :option_locator, :variable
336
- end
337
- assert_command_works :assert_selected, :locator, :option_locator
338
- assert_command_works :assert_not_selected, :locator, :option_locator
339
- assert_command_works :verify_selected, :locator, :option_locator
340
- assert_command_works :verify_not_selected, :locator, :option_locator
341
- assert_command_works :wait_for_selected, :locator, :option_locator
342
- assert_command_works :wait_for_not_selected, :locator, :option_locator
343
-
344
- assert_command_works :store_selected_id, :locator, :variable
345
- assert_command_works :assert_selected_id, :locator, :pattern
346
- assert_command_works :assert_not_selected_id, :locator, :pattern
347
- assert_command_works :verify_selected_id, :locator, :pattern
348
- assert_command_works :verify_not_selected_id, :locator, :pattern
349
- assert_command_works :wait_for_selected_id, :locator, :pattern
350
- assert_command_works :wait_for_not_selected_id, :locator, :pattern
351
-
352
- assert_command_works :store_selected_ids, :locator, :variable
353
- assert_command_works :assert_selected_ids, :locator, :pattern
354
- assert_command_works :assert_not_selected_ids, :locator, :pattern
355
- assert_command_works :verify_selected_ids, :locator, :pattern
356
- assert_command_works :verify_not_selected_ids, :locator, :pattern
357
- assert_command_works :wait_for_selected_ids, :locator, :pattern
358
- assert_command_works :wait_for_not_selected_ids, :locator, :pattern
359
-
360
- assert_command_works :store_selected_index, :locator, :variable
361
- assert_command_works :assert_selected_index, :locator, :pattern
362
- assert_command_works :assert_not_selected_index, :locator, :pattern
363
- assert_command_works :verify_selected_index, :locator, :pattern
364
- assert_command_works :verify_not_selected_index, :locator, :pattern
365
- assert_command_works :wait_for_selected_index, :locator, :pattern
366
- assert_command_works :wait_for_not_selected_index, :locator, :pattern
367
-
368
- assert_command_works :store_selected_indexes, :locator, :variable
369
- assert_command_works :assert_selected_indexes, :locator, :pattern
370
- assert_command_works :assert_not_selected_indexes, :locator, :pattern
371
- assert_command_works :verify_selected_indexes, :locator, :pattern
372
- assert_command_works :verify_not_selected_indexes, :locator, :pattern
373
- assert_command_works :wait_for_selected_indexes, :locator, :pattern
374
- assert_command_works :wait_for_not_selected_indexes, :locator, :pattern
375
-
376
- assert_command_works :store_selected_label, :locator, :variable
377
- assert_command_works :assert_selected_label, :locator, :pattern
378
- assert_command_works :assert_not_selected_label, :locator, :pattern
379
- assert_command_works :verify_selected_label, :locator, :pattern
380
- assert_command_works :verify_not_selected_label, :locator, :pattern
381
- assert_command_works :wait_for_selected_label, :locator, :pattern
382
- assert_command_works :wait_for_not_selected_label, :locator, :pattern
383
-
384
- assert_command_works :store_selected_labels, :locator, :variable
385
- assert_command_works :assert_selected_labels, :locator, :pattern
386
- assert_command_works :assert_not_selected_labels, :locator, :pattern
387
- assert_command_works :verify_selected_labels, :locator, :pattern
388
- assert_command_works :verify_not_selected_labels, :locator, :pattern
389
- assert_command_works :wait_for_selected_labels, :locator, :pattern
390
- assert_command_works :wait_for_not_selected_labels, :locator, :pattern
391
-
392
- assert_command_works :store_selected_value, :locator, :variable
393
- assert_command_works :assert_selected_value, :locator, :pattern
394
- assert_command_works :assert_not_selected_value, :locator, :pattern
395
- assert_command_works :verify_selected_value, :locator, :pattern
396
- assert_command_works :verify_not_selected_value, :locator, :pattern
397
- assert_command_works :wait_for_selected_value, :locator, :pattern
398
- assert_command_works :wait_for_not_selected_value, :locator, :pattern
399
-
400
- assert_command_works :store_selected_values, :locator, :variable
401
- assert_command_works :assert_selected_values, :locator, :pattern
402
- assert_command_works :assert_not_selected_values, :locator, :pattern
403
- assert_command_works :verify_selected_values, :locator, :pattern
404
- assert_command_works :verify_not_selected_values, :locator, :pattern
405
- assert_command_works :wait_for_selected_values, :locator, :pattern
406
- assert_command_works :wait_for_not_selected_values, :locator, :pattern
407
-
408
- assert_command_works :store_something_selected, :locator, :variable
409
- assert_command_works :assert_something_selected, :locator
410
- assert_command_works :assert_not_something_selected, :locator
411
- assert_command_works :verify_something_selected, :locator
412
- assert_command_works :verify_not_something_selected, :locator
413
- assert_command_works :wait_for_something_selected, :locator
414
- assert_command_works :wait_for_not_something_selected, :locator
415
-
416
- assert_command_works :store_selected_options, :locator, :variable
417
- assert_command_works :assert_selected_options, :locator, :coll_pattern
418
- assert_command_works :assert_not_selected_options, :locator, :coll_pattern
419
- assert_command_works :verify_selected_options, :locator, :coll_pattern
420
- assert_command_works :verify_not_selected_options, :locator, :coll_pattern
421
- assert_command_works :wait_for_selected_options, :locator, :coll_pattern
422
- assert_command_works :wait_for_not_selected_options, :locator, :coll_pattern
423
-
424
- assert_command_works :store_select_options, :locator, :variable
425
- assert_command_works :assert_select_options, :locator, :coll_pattern
426
- assert_command_works :assert_not_select_options, :locator, :coll_pattern
427
- assert_command_works :verify_select_options, :locator, :coll_pattern
428
- assert_command_works :verify_not_select_options, :locator, :coll_pattern
429
- assert_command_works :wait_for_select_options, :locator, :coll_pattern
430
- assert_command_works :wait_for_not_select_options, :locator, :coll_pattern
431
-
432
- assert_command_works :store_attribute, :locator_and_attribute_name, :variable
433
- assert_command_works :assert_attribute, :locator_and_attribute_name, :pattern
434
- assert_command_works :assert_not_attribute, :locator_and_attribute_name, :pattern
435
- assert_command_works :verify_attribute, :locator_and_attribute_name, :pattern
436
- assert_command_works :verify_not_attribute, :locator_and_attribute_name, :pattern
437
- assert_command_works :wait_for_attribute, :locator_and_attribute_name, :pattern
438
- assert_command_works :wait_for_not_attribute, :locator_and_attribute_name, :pattern
439
-
440
- assert_raise RuntimeError do
441
- assert_command_works :store_ordered, :locator, :locator, :variable
442
- end
443
- assert_command_works :assert_ordered, :locator, :locator
444
- assert_command_works :assert_not_ordered, :locator, :locator
445
- assert_command_works :verify_ordered, :locator, :locator
446
- assert_command_works :verify_not_ordered, :locator, :locator
447
- assert_command_works :wait_for_ordered, :locator, :locator
448
- assert_command_works :wait_for_not_ordered, :locator, :locator
449
-
450
- assert_command_works :store_text_present, :pattern, :variable
451
- assert_command_works :assert_text_present, :pattern
452
- assert_command_works :assert_text_not_present, :pattern
453
- assert_command_works :verify_text_present, :pattern
454
- assert_command_works :verify_text_not_present, :pattern
455
- assert_command_works :wait_for_text_present, :pattern
456
- assert_command_works :wait_for_text_not_present, :pattern
457
-
458
- assert_command_works :store_element_present, :locator, :variable
459
- assert_command_works :assert_element_present, :locator
460
- assert_command_works :assert_element_not_present, :locator
461
- assert_command_works :verify_element_present, :locator
462
- assert_command_works :verify_element_not_present, :locator
463
- assert_command_works :wait_for_element_present, :locator
464
- assert_command_works :wait_for_element_not_present, :locator
465
-
466
- assert_command_works :store_visible, :locator, :variable
467
- assert_command_works :assert_visible, :locator
468
- assert_command_works :assert_not_visible, :locator
469
- assert_command_works :verify_visible, :locator
470
- assert_command_works :verify_not_visible, :locator
471
- assert_command_works :wait_for_visible, :locator
472
- assert_command_works :wait_for_not_visible, :locator
473
-
474
- assert_raise RuntimeError do
475
- assert_command_works :store_error_on_next, :string
476
- end
477
- assert_command_works :assert_error_on_next, :string
478
- assert_command_works :assert_not_error_on_next, :string
479
- assert_command_works :verify_error_on_next, :string
480
- assert_command_works :verify_not_error_on_next, :string
481
- assert_command_works :wait_for_error_on_next, :string
482
- assert_command_works :wait_for_not_error_on_next, :string
483
-
484
- assert_raise RuntimeError do
485
- assert_command_works :store_failure_on_next, :string
486
- end
487
- assert_command_works :assert_failure_on_next, :string
488
- assert_command_works :assert_not_failure_on_next, :string
489
- assert_command_works :verify_failure_on_next, :string
490
- assert_command_works :verify_not_failure_on_next, :string
491
- assert_command_works :wait_for_failure_on_next, :string
492
- assert_command_works :wait_for_not_failure_on_next, :string
493
-
494
- assert_command_works :store_all_window_ids, :variable
495
- assert_command_works :assert_all_window_ids, :pattern
496
- assert_command_works :assert_not_all_window_ids, :pattern
497
- assert_command_works :verify_all_window_ids, :pattern
498
- assert_command_works :verify_not_all_window_ids, :pattern
499
- assert_command_works :wait_for_all_window_ids, :pattern
500
- assert_command_works :wait_for_not_all_window_ids, :pattern
501
-
502
- assert_command_works :store_all_window_names, :variable
503
- assert_command_works :assert_all_window_names, :pattern
504
- assert_command_works :assert_not_all_window_names, :pattern
505
- assert_command_works :verify_all_window_names, :pattern
506
- assert_command_works :verify_not_all_window_names, :pattern
507
- assert_command_works :wait_for_all_window_names, :pattern
508
- assert_command_works :wait_for_not_all_window_names, :pattern
509
-
510
- assert_command_works :store_all_window_titles, :variable
511
- assert_command_works :assert_all_window_titles, :pattern
512
- assert_command_works :assert_not_all_window_titles, :pattern
513
- assert_command_works :verify_all_window_titles, :pattern
514
- assert_command_works :verify_not_all_window_titles, :pattern
515
- assert_command_works :wait_for_all_window_titles, :pattern
516
- assert_command_works :wait_for_not_all_window_titles, :pattern
517
-
518
- assert_command_works :store_cookie, :variable
519
- assert_command_works :assert_cookie, :pattern
520
- assert_command_works :assert_not_cookie, :pattern
521
- assert_command_works :verify_cookie, :pattern
522
- assert_command_works :verify_not_cookie, :pattern
523
- assert_command_works :wait_for_cookie, :pattern
524
- assert_command_works :wait_for_not_cookie, :pattern
525
-
526
- assert_command_works :store_log_messages, :variable
527
- assert_command_works :assert_log_messages, :pattern
528
- assert_command_works :assert_not_log_messages, :pattern
529
- assert_command_works :verify_log_messages, :pattern
530
- assert_command_works :verify_not_log_messages, :pattern
531
- assert_command_works :wait_for_log_messages, :pattern
532
- assert_command_works :wait_for_not_log_messages, :pattern
533
-
534
- assert_command_works :store_mouse_speed, :variable
535
- assert_command_works :assert_mouse_speed, :pattern
536
- assert_command_works :assert_not_mouse_speed, :pattern
537
- assert_command_works :verify_mouse_speed, :pattern
538
- assert_command_works :verify_not_mouse_speed, :pattern
539
- assert_command_works :wait_for_mouse_speed, :pattern
540
- assert_command_works :wait_for_not_mouse_speed, :pattern
541
-
542
- assert_command_works :store_cursor_position, :locator, :variable
543
- assert_command_works :assert_cursor_position, :locator, :pattern
544
- assert_command_works :assert_not_cursor_position, :locator, :pattern
545
- assert_command_works :verify_cursor_position, :locator, :pattern
546
- assert_command_works :verify_not_cursor_position, :locator, :pattern
547
- assert_command_works :wait_for_cursor_position, :locator, :pattern
548
- assert_command_works :wait_for_not_cursor_position, :locator, :pattern
549
-
550
- assert_command_works :store_attribute_from_all_windows, :attribute_name, :variable
551
- assert_command_works :assert_attribute_from_all_windows, :attribute_name, :pattern
552
- assert_command_works :assert_not_attribute_from_all_windows, :attribute_name, :pattern
553
- assert_command_works :verify_attribute_from_all_windows, :attribute_name, :pattern
554
- assert_command_works :verify_not_attribute_from_all_windows, :attribute_name, :pattern
555
- assert_command_works :wait_for_attribute_from_all_windows, :attribute_name, :pattern
556
- assert_command_works :wait_for_not_attribute_from_all_windows, :attribute_name, :pattern
557
-
558
- assert_command_works :store_element_height, :locator, :variable
559
- assert_command_works :assert_element_height, :locator, :dimension
560
- assert_command_works :assert_not_element_height, :locator, :dimension
561
- assert_command_works :verify_element_height, :locator, :dimension
562
- assert_command_works :verify_not_element_height, :locator, :dimension
563
- assert_command_works :wait_for_element_height, :locator, :dimension
564
- assert_command_works :wait_for_not_element_height, :locator, :dimension
565
-
566
- assert_command_works :store_element_index, :locator, :variable
567
- assert_command_works :assert_element_index, :locator, :pattern
568
- assert_command_works :assert_not_element_index, :locator, :pattern
569
- assert_command_works :verify_element_index, :locator, :pattern
570
- assert_command_works :verify_not_element_index, :locator, :pattern
571
- assert_command_works :wait_for_element_index, :locator, :pattern
572
- assert_command_works :wait_for_not_element_index, :locator, :pattern
573
-
574
- assert_command_works :store_element_width, :locator, :variable
575
- assert_command_works :assert_element_width, :locator, :dimension
576
- assert_command_works :assert_not_element_width, :locator, :dimension
577
- assert_command_works :verify_element_width, :locator, :dimension
578
- assert_command_works :verify_not_element_width, :locator, :dimension
579
- assert_command_works :wait_for_element_width, :locator, :dimension
580
- assert_command_works :wait_for_not_element_width, :locator, :dimension
581
-
582
- assert_command_works :store_element_position_left, :locator, :variable
583
- assert_command_works :assert_element_position_left, :locator, :dimension
584
- assert_command_works :assert_not_element_position_left, :locator, :dimension
585
- assert_command_works :verify_element_position_left, :locator, :dimension
586
- assert_command_works :verify_not_element_position_left, :locator, :dimension
587
- assert_command_works :wait_for_element_position_left, :locator, :dimension
588
- assert_command_works :wait_for_not_element_position_left, :locator, :dimension
589
-
590
- assert_command_works :store_element_position_top, :locator, :variable
591
- assert_command_works :assert_element_position_top, :locator, :dimension
592
- assert_command_works :assert_not_element_position_top, :locator, :dimension
593
- assert_command_works :verify_element_position_top, :locator, :dimension
594
- assert_command_works :verify_not_element_position_top, :locator, :dimension
595
- assert_command_works :wait_for_element_position_top, :locator, :dimension
596
- assert_command_works :wait_for_not_element_position_top, :locator, :dimension
597
-
598
- assert_command_works :store_editable, :locator, :variable
599
- assert_command_works :assert_editable, :locator
600
- assert_command_works :assert_not_editable, :locator
601
- assert_command_works :verify_editable, :locator
602
- assert_command_works :verify_not_editable, :locator
603
- assert_command_works :wait_for_editable, :locator
604
- assert_command_works :wait_for_not_editable, :locator
605
-
606
- assert_command_works :store_all_buttons, :variable
607
- assert_command_works :assert_all_buttons, :coll_pattern
608
- assert_command_works :assert_not_all_buttons, :coll_pattern
609
- assert_command_works :verify_all_buttons, :coll_pattern
610
- assert_command_works :verify_not_all_buttons, :coll_pattern
611
- assert_command_works :wait_for_all_buttons, :coll_pattern
612
- assert_command_works :wait_for_not_all_buttons, :coll_pattern
613
-
614
- assert_command_works :store_all_links, :variable
615
- assert_command_works :assert_all_links, :coll_pattern
616
- assert_command_works :assert_not_all_links, :coll_pattern
617
- assert_command_works :verify_all_links, :coll_pattern
618
- assert_command_works :verify_not_all_links, :coll_pattern
619
- assert_command_works :wait_for_all_links, :coll_pattern
620
- assert_command_works :wait_for_not_all_links, :coll_pattern
621
-
622
- assert_command_works :store_all_fields, :variable
623
- assert_command_works :assert_all_fields, :coll_pattern
624
- assert_command_works :assert_not_all_fields, :coll_pattern
625
- assert_command_works :verify_all_fields, :coll_pattern
626
- assert_command_works :verify_not_all_fields, :coll_pattern
627
- assert_command_works :wait_for_all_fields, :coll_pattern
628
- assert_command_works :wait_for_not_all_fields, :coll_pattern
629
-
630
- assert_command_works :store_html_source, :variable
631
- assert_command_works :assert_html_source, :pattern
632
- assert_command_works :assert_not_html_source, :pattern
633
- assert_command_works :verify_html_source, :pattern
634
- assert_command_works :verify_not_html_source, :pattern
635
- assert_command_works :wait_for_html_source, :pattern
636
- assert_command_works :wait_for_not_html_source, :pattern
637
-
638
- assert_command_works :store_expression, :script, :variable
639
- assert_command_works :assert_expression, :script, :pattern
640
- assert_command_works :assert_not_expression, :script, :pattern
641
- assert_command_works :verify_expression, :script, :pattern
642
- assert_command_works :verify_not_expression, :script, :pattern
643
- assert_command_works :wait_for_expression, :script, :pattern
644
- assert_command_works :wait_for_not_expression, :script, :pattern
645
-
646
- assert_raise RuntimeError do
647
- assert_command_works :store_whether_this_frame_match_frame_expression, :string, :string, :variable
648
- end
649
- assert_command_works :assert_whether_this_frame_match_frame_expression, :string, :string
650
- assert_command_works :assert_not_whether_this_frame_match_frame_expression, :string, :string
651
- assert_command_works :verify_whether_this_frame_match_frame_expression, :string, :string
652
- assert_command_works :verify_not_whether_this_frame_match_frame_expression, :string, :string
653
- assert_command_works :wait_for_whether_this_frame_match_frame_expression, :string, :string
654
- assert_command_works :wait_for_not_whether_this_frame_match_frame_expression, :string, :string
655
-
656
- assert_raise RuntimeError do
657
- assert_command_works :store_whether_this_window_match_window_expression, :string, :string, :variable
658
- end
659
- assert_command_works :assert_whether_this_window_match_window_expression, :string, :string
660
- assert_command_works :assert_not_whether_this_window_match_window_expression, :string, :string
661
- assert_command_works :verify_whether_this_window_match_window_expression, :string, :string
662
- assert_command_works :verify_not_whether_this_window_match_window_expression, :string, :string
663
- assert_command_works :wait_for_whether_this_window_match_window_expression, :string, :string
664
- assert_command_works :wait_for_not_whether_this_window_match_window_expression, :string, :string
665
- end
666
-
667
- def test_partial_support
668
- expected = <<END
669
- <table>
670
- <tr><th colspan="3">Partial support</th></tr>
671
- <tr><td>type</td><td>partial</td><td>RSelenese partial</td></tr>
672
- </table>
673
- END
674
- input = "include_partial 'override'"
675
- partial = "type 'partial', 'RSelenese partial'"
676
-
677
- create_rsel_file_from(partial, "_override.rsel")
678
-
679
- assert_rselenese expected, 'Partial support', input
680
-
681
- File.delete(test_path_for("_override.rsel"))
682
- end
683
-
684
- def test_partial_support_with_local_assigns
685
- expected = <<END_EXPECTED
686
- <table>
687
- <tr><th colspan="3">Partial support with local variables</th></tr>
688
- <tr><td>type</td><td>partial</td><td>RSelenese partial</td></tr>
689
- <tr><td>type</td><td>local</td><td>par</td></tr>
690
- <tr><td>type</td><td>local</td><td>tial</td></tr>
691
- </table>
692
- END_EXPECTED
693
- input = "include_partial 'override', :locator => 'local', :input => ['par', 'tial']"
694
- partial = <<END_PARTIAL
695
- type 'partial', 'RSelenese partial'
696
- input.each do |i|
697
- type locator, i
698
- end
699
- END_PARTIAL
700
-
701
- create_rsel_file_from(partial, "_override.rsel")
702
-
703
- assert_rselenese expected, 'Partial support with local variables', input
704
-
705
- File.delete(test_path_for("_override.rsel"))
706
- end
707
-
708
- end