zena 1.1.3 → 1.2.0

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 (392) hide show
  1. data/History.txt +23 -1
  2. data/MIT-LICENSE +2 -2
  3. data/README.rdoc +2 -15
  4. data/app/controllers/acls_controller.rb +1 -1
  5. data/app/controllers/documents_controller.rb +12 -3
  6. data/app/controllers/nodes_controller.rb +1 -3
  7. data/app/controllers/sites_controller.rb +7 -0
  8. data/app/controllers/versions_controller.rb +1 -1
  9. data/app/controllers/virtual_classes_controller.rb +7 -8
  10. data/app/models/acl.rb +3 -2
  11. data/app/models/relation_proxy.rb +2 -1
  12. data/app/models/role.rb +16 -0
  13. data/app/models/site.rb +48 -0
  14. data/app/models/text_document.rb +2 -1
  15. data/app/models/user.rb +2 -1
  16. data/app/models/zip.rb +2 -1
  17. data/app/views/acls/index.rhtml +11 -1
  18. data/app/views/documents/show.rhtml +1 -1
  19. data/app/views/relations/_add.erb +2 -2
  20. data/app/views/relations/_form.erb +5 -2
  21. data/app/views/relations/_li.erb +4 -1
  22. data/app/views/relations/index.erb +3 -3
  23. data/app/views/sites/_form.erb +1 -1
  24. data/app/views/sites/_job.erb +4 -0
  25. data/app/views/sites/index.erb +1 -1
  26. data/app/views/sites/jobs.erb +10 -0
  27. data/app/views/templates/document_create_tabs/_file.rhtml +3 -0
  28. data/app/views/zafu/default/Node-+search.zafu +2 -2
  29. data/bricks/acls/zena/init.rb +2 -1
  30. data/bricks/acls/zena/test/integration/acl_integration_test.rb +5 -5
  31. data/bricks/acls/zena/test/sites/erebus/acls.yml +2 -2
  32. data/bricks/acls/zena/test/unit/acl_test.rb +2 -2
  33. data/bricks/grid/lib/bricks/grid.rb +110 -0
  34. data/bricks/grid/zena/init.rb +4 -0
  35. data/bricks/math/lib/bricks/math.rb +1 -0
  36. data/bricks/pdf/lib/bricks/pdf.rb +10 -1
  37. data/bricks/sphinx/zena/tasks.rb +8 -40
  38. data/bricks/spreadsheet/README +31 -0
  39. data/bricks/spreadsheet/lib/bricks/spreadsheet.rb +293 -0
  40. data/bricks/spreadsheet/zena/init.rb +3 -0
  41. data/bricks/spreadsheet/zena/test/sites/zena/links.yml +11 -0
  42. data/bricks/spreadsheet/zena/test/unit/xlsx_test.rb +5 -0
  43. data/bricks/spreadsheet/zena/test/zafu/README +27 -0
  44. data/bricks/spreadsheet/zena/test/zafu/spreadsheet.yml +19 -0
  45. data/bricks/worker/lib/bricks/worker.rb +11 -5
  46. data/bricks/worker/zena/init.rb +8 -0
  47. data/bricks/worker/zena/migrate/20120501091514_add_site_id_to_jobs.rb +9 -0
  48. data/bricks/zena/zena/migrate/01_base.rb +0 -7
  49. data/bricks/zena/zena/migrate/20111214112233_add_comment_to_relations.rb +9 -0
  50. data/config/bricks.yml +15 -1
  51. data/config/environments/production.rb +2 -2
  52. data/config/gems.yml +6 -1
  53. data/doc/zafu_changes.yml +1 -1
  54. data/lib/tasks/zena.rake +6 -2
  55. data/lib/zena/app.rb +1 -1
  56. data/lib/zena/code/default_syntax.rb +5 -1
  57. data/lib/zena/db_helper/mysql.rb +5 -1
  58. data/lib/zena/deploy/app_init.rhtml +11 -7
  59. data/lib/zena/deploy/awstats.conf.rhtml +1 -1
  60. data/lib/zena/deploy/start_stop.rhtml +5 -5
  61. data/lib/zena/deploy/vhost.rhtml +16 -2
  62. data/lib/zena/deploy.rb +5 -3
  63. data/lib/zena/info.rb +1 -1
  64. data/lib/zena/parser/zazen_rules.rb +7 -7
  65. data/lib/zena/remote/node.rb +7 -0
  66. data/lib/zena/routes.rb +4 -5
  67. data/lib/zena/test_controller.rb +18 -1
  68. data/lib/zena/use/action.rb +13 -4
  69. data/lib/zena/use/ajax.rb +10 -4
  70. data/lib/zena/use/authlogic.rb +1 -1
  71. data/lib/zena/use/calendar.rb +4 -0
  72. data/lib/zena/use/conditional.rb +3 -0
  73. data/lib/zena/use/dates.rb +44 -4
  74. data/lib/zena/use/display.rb +45 -15
  75. data/lib/zena/use/forms.rb +59 -30
  76. data/lib/zena/use/query_builder.rb +12 -12
  77. data/lib/zena/use/recursion.rb +1 -1
  78. data/lib/zena/use/rendering.rb +18 -17
  79. data/lib/zena/use/urls.rb +2 -1
  80. data/lib/zena/use/zafu_safe_definitions.rb +0 -9
  81. data/lib/zena/use/zafu_templates.rb +2 -2
  82. data/lib/zena/use/zazen.rb +1 -3
  83. data/lib/zena/use.rb +13 -2
  84. data/lib/zena.rb +8 -2
  85. data/public/images/bullet_back.png +0 -0
  86. data/public/javascripts/grid.js +535 -0
  87. data/public/javascripts/tablekit.js +0 -0
  88. data/public/javascripts/window.js +0 -0
  89. data/public/javascripts/zena.js +17 -7
  90. data/public/stylesheets/admin.css +5 -1
  91. data/public/stylesheets/grid.css +19 -0
  92. data/test/fixtures/files/TestNode.zafu +123 -311
  93. data/test/fixtures/files/translations_fr.yml +6 -1
  94. data/test/functional/acls_controller_test.rb +2 -2
  95. data/test/functional/nodes_controller_test.rb +17 -11
  96. data/test/functional/virtual_classes_controller_test.rb +1 -1
  97. data/test/integration/query_node/basic.yml +9 -0
  98. data/test/integration/query_node/dates.yml +1 -1
  99. data/test/integration/zafu_compiler/ajax.yml +9 -9
  100. data/test/integration/zafu_compiler/basic.yml +0 -24
  101. data/test/integration/zafu_compiler/dates.yml +24 -7
  102. data/test/integration/zafu_compiler/display.yml +45 -2
  103. data/test/integration/zafu_compiler/errors.yml +0 -6
  104. data/test/integration/zafu_compiler/forms.yml +41 -3
  105. data/test/integration/zafu_compiler/query.yml +29 -3
  106. data/test/integration/zafu_compiler/roles.yml +0 -4
  107. data/test/integration/zafu_compiler/safe_definitions.yml +1 -1
  108. data/test/integration/zafu_compiler_test.rb +11 -3
  109. data/test/selenium/Add/add3.rsel +8 -8
  110. data/test/selenium/Drop/drop1.rsel +12 -12
  111. data/test/selenium/Drop/drop2.rsel +14 -14
  112. data/test/selenium/Drop/drop3.rsel +21 -21
  113. data/test/selenium/Drop/drop4.rsel +1 -1
  114. data/test/selenium/Edit/edit2.rsel +9 -9
  115. data/test/selenium/Edit/edit4.rsel +55 -0
  116. data/test/selenium/Edit/edit5.rsel +41 -0
  117. data/test/selenium/Edit/edit6.rsel +53 -0
  118. data/test/selenium/Filter/0setup.rsel +12 -0
  119. data/test/selenium/Filter/filter1.rsel +9 -0
  120. data/test/selenium/Filter/filter2.rsel +9 -0
  121. data/test/selenium/Form/form1.rsel +1 -1
  122. data/test/selenium/Form/form2.rsel +1 -1
  123. data/test/selenium/Form/form3.rsel +15 -0
  124. data/test/selenium/Grid/0setup.rsel +13 -0
  125. data/test/selenium/Grid/grid1.rsel +11 -0
  126. data/test/selenium/Swap/0setup.rsel +12 -0
  127. data/test/selenium/Swap/swap1.rsel +13 -0
  128. data/test/selenium/Swap/swap2.rsel +11 -0
  129. data/test/selenium/Toggle/toggle1.rsel +6 -6
  130. data/test/sites/zena/versions.yml +1 -1
  131. data/test/unit/relation_proxy_test.rb +36 -0
  132. data/test/unit/site_test.rb +10 -2
  133. data/test/unit/zena/use/rendering_test.rb +7 -6
  134. data/test/unit/zena/use/zazen_test.rb +1 -2
  135. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run 2.tmCommand +24 -0
  136. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run Context.tmCommand +58 -0
  137. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run Focused Should.tmCommand +88 -0
  138. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/Run.tmCommand +27 -0
  139. data/vendor/TextMate/Ruby Shoulda.tmbundle/Commands/YAML to Shoulda.tmCommand +23 -0
  140. data/vendor/TextMate/Ruby Shoulda.tmbundle/Preferences/Symbol List: Context.tmPreferences +19 -0
  141. data/vendor/TextMate/Ruby Shoulda.tmbundle/Preferences/Symbol List: Should.tmPreferences +19 -0
  142. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory attributes for.tmSnippet +16 -0
  143. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory build.tmSnippet +16 -0
  144. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory.tmSnippet +16 -0
  145. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_define with class.tmSnippet +18 -0
  146. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_define.tmSnippet +18 -0
  147. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_next.tmSnippet +16 -0
  148. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/Factory_sequence.tmSnippet +18 -0
  149. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_bad_value.tmSnippet +16 -0
  150. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_contains.tmSnippet +16 -0
  151. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_does_not_contain.tmSnippet +16 -0
  152. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_good_value.tmSnippet +16 -0
  153. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_same_elements.tmSnippet +16 -0
  154. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_save.tmSnippet +16 -0
  155. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_sent_email.tmSnippet +18 -0
  156. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/assert_valid.tmSnippet +16 -0
  157. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/association.tmSnippet +17 -0
  158. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/attribute.tmSnippet +17 -0
  159. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/before_should block.tmSnippet +18 -0
  160. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/context block get.tmSnippet +22 -0
  161. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/context block post.tmSnippet +23 -0
  162. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/context block with setup.tmSnippet +25 -0
  163. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/setup.tmSnippet +18 -0
  164. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should block with before proc.tmSnippet +18 -0
  165. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should block.tmSnippet +18 -0
  166. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_allow_values_for.tmSnippet +16 -0
  167. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_assign_to.tmSnippet +16 -0
  168. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_be_restful denied.tmSnippet +20 -0
  169. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_be_restful.tmSnippet +20 -0
  170. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_belong_to.tmSnippet +16 -0
  171. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_change by.tmSnippet +16 -0
  172. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_change from to.tmSnippet +16 -0
  173. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_length_at_least.tmSnippet +16 -0
  174. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_length_in_range.tmSnippet +16 -0
  175. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_length_is.tmSnippet +16 -0
  176. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_ensure_value_in_range.tmSnippet +16 -0
  177. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_eventually.tmSnippet +18 -0
  178. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_filter_params.tmSnippet +16 -0
  179. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_and_belong_to_many.tmSnippet +16 -0
  180. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_class_methods.tmSnippet +16 -0
  181. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_db_column.tmSnippet +16 -0
  182. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_db_columns.tmSnippet +16 -0
  183. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_index.tmSnippet +16 -0
  184. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_indices.tmSnippet +16 -0
  185. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_instance_methods.tmSnippet +16 -0
  186. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_many.tmSnippet +16 -0
  187. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_named_scope.tmSnippet +16 -0
  188. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_one.tmSnippet +16 -0
  189. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_have_readonly_attributes.tmSnippet +16 -0
  190. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_allow_mass_assignment_of.tmSnippet +16 -0
  191. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_allow_values_for.tmSnippet +16 -0
  192. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_assign_to.tmSnippet +16 -0
  193. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_change.tmSnippet +16 -0
  194. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_not_set_the_flash.tmSnippet +16 -0
  195. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_redirect_to.tmSnippet +16 -0
  196. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_a_form.tmSnippet +16 -0
  197. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_template.tmSnippet +16 -0
  198. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_with_layout.tmSnippet +16 -0
  199. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_render_without_layout.tmSnippet +16 -0
  200. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_respond_with.tmSnippet +16 -0
  201. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_respond_with_content_type.tmSnippet +16 -0
  202. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_return_from_session.tmSnippet +16 -0
  203. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_route.tmSnippet +16 -0
  204. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_set_the_flash_to.tmSnippet +16 -0
  205. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_acceptance_of.tmSnippet +16 -0
  206. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_numericality_of.tmSnippet +16 -0
  207. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_presence_of.tmSnippet +16 -0
  208. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_uniqueness_of with scope.tmSnippet +16 -0
  209. data/vendor/TextMate/Ruby Shoulda.tmbundle/Snippets/should_validate_uniqueness_of.tmSnippet +16 -0
  210. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/catch_exception.rb +39 -0
  211. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/run_script.rb +104 -0
  212. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/stdin_dialog.rb +14 -0
  213. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/test.rb +17 -0
  214. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/RubyMate/todo.txt +13 -0
  215. data/vendor/TextMate/Ruby Shoulda.tmbundle/Support/bin/yaml_to_shoulda.rb +25 -0
  216. data/vendor/TextMate/Ruby Shoulda.tmbundle/Syntaxes/Ruby on Rails (Shoulda).tmLanguage +166 -0
  217. data/vendor/TextMate/Ruby Shoulda.tmbundle/info.plist +304 -0
  218. data/vendor/TextMate/Zena.tmbundle/Commands/Run all yaml tests.tmCommand +37 -0
  219. data/vendor/TextMate/Zena.tmbundle/Commands/Run focused yaml test.tmCommand +52 -0
  220. data/vendor/TextMate/Zena.tmbundle/Support/RubyMate/catch_exception.rb +39 -0
  221. data/vendor/TextMate/Zena.tmbundle/Support/RubyMate/run_script.rb +118 -0
  222. data/vendor/TextMate/Zena.tmbundle/Support/RubyMate/stdin_dialog.rb +14 -0
  223. data/vendor/TextMate/Zena.tmbundle/info.plist +17 -0
  224. data/vendor/plugins/selenium-on-rails/CHANGELOG +125 -0
  225. data/vendor/plugins/selenium-on-rails/LICENSE-2.0.txt +202 -0
  226. data/vendor/plugins/selenium-on-rails/README.md +202 -0
  227. data/vendor/plugins/selenium-on-rails/Rakefile +38 -0
  228. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumController.html +265 -0
  229. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumHelper.html +148 -0
  230. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/FixtureLoader.html +231 -0
  231. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/PartialsSupport.html +195 -0
  232. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/Paths.html +295 -0
  233. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/RSelenese.html +219 -0
  234. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/Renderer.html +156 -0
  235. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/Selenese.html +179 -0
  236. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/SuiteRenderer.html +223 -0
  237. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilder.html +441 -0
  238. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderAccessors.html +3098 -0
  239. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderActions.html +2080 -0
  240. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderUserAccessors.html +116 -0
  241. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails/TestBuilderUserActions.html +116 -0
  242. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRails.html +126 -0
  243. data/vendor/plugins/selenium-on-rails/doc/classes/SeleniumOnRailsConfig.html +150 -0
  244. data/vendor/plugins/selenium-on-rails/doc/files/CHANGELOG.html +422 -0
  245. data/vendor/plugins/selenium-on-rails/doc/files/README.html +321 -0
  246. data/vendor/plugins/selenium-on-rails/doc/files/lib/controllers/selenium_controller_rb.html +108 -0
  247. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_helper_rb.html +101 -0
  248. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/acceptance_test_runner_rb.html +222 -0
  249. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/fixture_loader_rb.html +109 -0
  250. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/partials_support_rb.html +111 -0
  251. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/paths_rb.html +101 -0
  252. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/renderer_rb.html +101 -0
  253. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/rselenese_rb.html +118 -0
  254. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/selenese_rb.html +101 -0
  255. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/suite_renderer_rb.html +101 -0
  256. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/test_builder_accessors_rb.html +114 -0
  257. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/test_builder_actions_rb.html +113 -0
  258. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails/test_builder_rb.html +120 -0
  259. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails_config_rb.html +108 -0
  260. data/vendor/plugins/selenium-on-rails/doc/files/lib/selenium_on_rails_rb.html +115 -0
  261. data/vendor/plugins/selenium-on-rails/doc/fr_class_index.html +42 -0
  262. data/vendor/plugins/selenium-on-rails/doc/fr_file_index.html +43 -0
  263. data/vendor/plugins/selenium-on-rails/doc/fr_method_index.html +182 -0
  264. data/vendor/plugins/selenium-on-rails/doc/index.html +24 -0
  265. data/vendor/plugins/selenium-on-rails/doc/rdoc-style.css +208 -0
  266. data/vendor/plugins/selenium-on-rails/generators/selenium/USAGE +19 -0
  267. data/vendor/plugins/selenium-on-rails/generators/selenium/selenium_generator.rb +50 -0
  268. data/vendor/plugins/selenium-on-rails/generators/selenium/templates/rhtml.rhtml +16 -0
  269. data/vendor/plugins/selenium-on-rails/generators/selenium/templates/rselenese.rhtml +14 -0
  270. data/vendor/plugins/selenium-on-rails/generators/selenium/templates/selenese.rhtml +11 -0
  271. data/vendor/plugins/selenium-on-rails/init.rb +15 -0
  272. data/vendor/plugins/selenium-on-rails/lib/controllers/selenium_controller.rb +122 -0
  273. data/vendor/plugins/selenium-on-rails/lib/controllers/switch_environment_controller.rb +16 -0
  274. data/vendor/plugins/selenium-on-rails/lib/selenium_helper.rb +8 -0
  275. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/acceptance_test_runner.rb +215 -0
  276. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/fixture_loader.rb +57 -0
  277. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/partials_support.rb +36 -0
  278. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/paths.rb +61 -0
  279. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/renderer.rb +20 -0
  280. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/rselenese.rb +44 -0
  281. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/selenese.rb +87 -0
  282. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/suite_renderer.rb +56 -0
  283. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder.rb +116 -0
  284. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_accessors.rb +1002 -0
  285. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_actions.rb +514 -0
  286. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_user_accessors.rb.example +91 -0
  287. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails/test_builder_user_actions.rb.example +24 -0
  288. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails.rb +11 -0
  289. data/vendor/plugins/selenium-on-rails/lib/selenium_on_rails_config.rb +30 -0
  290. data/vendor/plugins/selenium-on-rails/lib/views/layouts/layout.rhtml +18 -0
  291. data/vendor/plugins/selenium-on-rails/lib/views/record.rhtml +5 -0
  292. data/vendor/plugins/selenium-on-rails/lib/views/selenium_helper.rb +9 -0
  293. data/vendor/plugins/selenium-on-rails/lib/views/setup.rhtml +67 -0
  294. data/vendor/plugins/selenium-on-rails/lib/views/test_suite.rhtml +26 -0
  295. data/vendor/plugins/selenium-on-rails/routes.rb +24 -0
  296. data/vendor/plugins/selenium-on-rails/selenium-core/Blank.html +7 -0
  297. data/vendor/plugins/selenium-on-rails/selenium-core/InjectedRemoteRunner.html +8 -0
  298. data/vendor/plugins/selenium-on-rails/selenium-core/RemoteRunner.html +110 -0
  299. data/vendor/plugins/selenium-on-rails/selenium-core/SeleniumLog.html +109 -0
  300. data/vendor/plugins/selenium-on-rails/selenium-core/TestPrompt.html +145 -0
  301. data/vendor/plugins/selenium-on-rails/selenium-core/TestRunner-splash.html +55 -0
  302. data/vendor/plugins/selenium-on-rails/selenium-core/TestRunner.hta +177 -0
  303. data/vendor/plugins/selenium-on-rails/selenium-core/TestRunner.html +177 -0
  304. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/butmin.gif +0 -0
  305. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/butplus.gif +0 -0
  306. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/domviewer.css +298 -0
  307. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/domviewer.html +16 -0
  308. data/vendor/plugins/selenium-on-rails/selenium-core/domviewer/selenium-domviewer.js +205 -0
  309. data/vendor/plugins/selenium-on-rails/selenium-core/icons/all.png +0 -0
  310. data/vendor/plugins/selenium-on-rails/selenium-core/icons/continue.png +0 -0
  311. data/vendor/plugins/selenium-on-rails/selenium-core/icons/continue_disabled.png +0 -0
  312. data/vendor/plugins/selenium-on-rails/selenium-core/icons/pause.png +0 -0
  313. data/vendor/plugins/selenium-on-rails/selenium-core/icons/pause_disabled.png +0 -0
  314. data/vendor/plugins/selenium-on-rails/selenium-core/icons/selected.png +0 -0
  315. data/vendor/plugins/selenium-on-rails/selenium-core/icons/step.png +0 -0
  316. data/vendor/plugins/selenium-on-rails/selenium-core/icons/step_disabled.png +0 -0
  317. data/vendor/plugins/selenium-on-rails/selenium-core/iedoc-core.xml +1759 -0
  318. data/vendor/plugins/selenium-on-rails/selenium-core/iedoc.xml +1800 -0
  319. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/cssQuery-p.js +6 -0
  320. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery-level2.js +142 -0
  321. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery-level3.js +150 -0
  322. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery-standard.js +53 -0
  323. data/vendor/plugins/selenium-on-rails/selenium-core/lib/cssQuery/src/cssQuery.js +356 -0
  324. data/vendor/plugins/selenium-on-rails/selenium-core/lib/prototype.js +2006 -0
  325. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/builder.js +101 -0
  326. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/controls.js +815 -0
  327. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/dragdrop.js +915 -0
  328. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/effects.js +958 -0
  329. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/scriptaculous.js +47 -0
  330. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/slider.js +283 -0
  331. data/vendor/plugins/selenium-on-rails/selenium-core/lib/scriptaculous/unittest.js +383 -0
  332. data/vendor/plugins/selenium-on-rails/selenium-core/lib/snapsie.js +91 -0
  333. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/find_matching_child.js +69 -0
  334. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/htmlutils.js +1616 -0
  335. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/injection.html +72 -0
  336. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-api.js +3184 -0
  337. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-browserbot.js +2300 -0
  338. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-browserdetect.js +153 -0
  339. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-commandhandlers.js +377 -0
  340. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-executionloop.js +175 -0
  341. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-logging.js +148 -0
  342. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-remoterunner.js +695 -0
  343. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-testrunner.js +1362 -0
  344. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/selenium-version.js +5 -0
  345. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/ui-doc.html +803 -0
  346. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/ui-element.js +1537 -0
  347. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/ui-map-sample.js +979 -0
  348. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/user-extensions.js +3 -0
  349. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/user-extensions.js.sample +75 -0
  350. data/vendor/plugins/selenium-on-rails/selenium-core/scripts/xmlextras.js +153 -0
  351. data/vendor/plugins/selenium-on-rails/selenium-core/selenium-logo.png +0 -0
  352. data/vendor/plugins/selenium-on-rails/selenium-core/selenium-test.css +43 -0
  353. data/vendor/plugins/selenium-on-rails/selenium-core/selenium.css +316 -0
  354. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/dom.js +566 -0
  355. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/javascript-xpath-0.1.11.js +2816 -0
  356. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/util.js +549 -0
  357. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/xmltoken.js +149 -0
  358. data/vendor/plugins/selenium-on-rails/selenium-core/xpath/xpath.js +2450 -0
  359. data/vendor/plugins/selenium-on-rails/tasks/test_acceptance.rake +8 -0
  360. data/vendor/plugins/selenium-on-rails/test/fixtures/config.yml +37 -0
  361. data/vendor/plugins/selenium-on-rails/test/fixtures/selenium.yml +27 -0
  362. data/vendor/plugins/selenium-on-rails/test/paths_test.rb +72 -0
  363. data/vendor/plugins/selenium-on-rails/test/renderer_test.rb +157 -0
  364. data/vendor/plugins/selenium-on-rails/test/rselenese_test.rb +708 -0
  365. data/vendor/plugins/selenium-on-rails/test/selenese_test.rb +242 -0
  366. data/vendor/plugins/selenium-on-rails/test/selenium_controller_test.rb +67 -0
  367. data/vendor/plugins/selenium-on-rails/test/selenium_on_rails_config_test.rb +43 -0
  368. data/vendor/plugins/selenium-on-rails/test/selenium_support_test.rb +35 -0
  369. data/vendor/plugins/selenium-on-rails/test/setup_test.rb +31 -0
  370. data/vendor/plugins/selenium-on-rails/test/suite_renderer_test.rb +109 -0
  371. data/vendor/plugins/selenium-on-rails/test/switch_environment_controller_test.rb +17 -0
  372. data/vendor/plugins/selenium-on-rails/test/test_builder_functions_authortest.rb +51 -0
  373. data/vendor/plugins/selenium-on-rails/test/test_helper.rb +101 -0
  374. data/vendor/plugins/selenium-on-rails/test_data/_partial.rsel +1 -0
  375. data/vendor/plugins/selenium-on-rails/test_data/own_layout.html +12 -0
  376. data/vendor/plugins/selenium-on-rails/test_data/partials/_html.html +6 -0
  377. data/vendor/plugins/selenium-on-rails/test_data/partials/_nesting.rsel +2 -0
  378. data/vendor/plugins/selenium-on-rails/test_data/partials/_rhtml.rhtml +6 -0
  379. data/vendor/plugins/selenium-on-rails/test_data/partials/_rsel.rsel +1 -0
  380. data/vendor/plugins/selenium-on-rails/test_data/partials/_sel.sel +5 -0
  381. data/vendor/plugins/selenium-on-rails/test_data/partials/all_partials.rsel +5 -0
  382. data/vendor/plugins/selenium-on-rails/test_data/rhtml.rhtml +7 -0
  383. data/vendor/plugins/selenium-on-rails/test_data/rselenese.rsel +8 -0
  384. data/vendor/plugins/selenium-on-rails/test_data/selenese.sel +7 -0
  385. data/vendor/plugins/selenium-on-rails/test_data/suite_one/subsuite/suite_one_subsuite_testcase.sel +1 -0
  386. data/vendor/plugins/selenium-on-rails/test_data/suite_one/suite_one_testcase1.sel +1 -0
  387. data/vendor/plugins/selenium-on-rails/test_data/suite_one/suite_one_testcase2.sel +1 -0
  388. data/vendor/plugins/selenium-on-rails/test_data/suite_two/suite_two_testcase.sel +1 -0
  389. data/zena.gemspec +290 -7
  390. metadata +346 -52
  391. data/app/views/nodes/_table.rhtml +0 -14
  392. data/lib/zena/use/grid.rb +0 -154
@@ -0,0 +1,708 @@
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