watir 6.10.0 → 6.10.1

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 (280) hide show
  1. checksums.yaml +4 -4
  2. data/.document +5 -5
  3. data/.github/ISSUE_TEMPLATE.md +16 -16
  4. data/.gitignore +21 -21
  5. data/.travis.yml +72 -72
  6. data/CHANGES.md +6 -0
  7. data/Gemfile +16 -16
  8. data/LICENSE +23 -23
  9. data/README.md +106 -106
  10. data/Rakefile +153 -153
  11. data/appveyor.yml +13 -13
  12. data/lib/watir-webdriver.rb +2 -2
  13. data/lib/watir.rb +158 -158
  14. data/lib/watir/adjacent.rb +126 -126
  15. data/lib/watir/after_hooks.rb +132 -132
  16. data/lib/watir/alert.rb +120 -120
  17. data/lib/watir/aliases.rb +6 -6
  18. data/lib/watir/attribute_helper.rb +96 -96
  19. data/lib/watir/browser.rb +349 -349
  20. data/lib/watir/capabilities.rb +123 -123
  21. data/lib/watir/cell_container.rb +25 -25
  22. data/lib/watir/container.rb +51 -51
  23. data/lib/watir/cookies.rb +134 -134
  24. data/lib/watir/element_collection.rb +138 -138
  25. data/lib/watir/elements/area.rb +12 -12
  26. data/lib/watir/elements/button.rb +37 -37
  27. data/lib/watir/elements/cell.rb +17 -17
  28. data/lib/watir/elements/checkbox.rb +56 -56
  29. data/lib/watir/elements/dlist.rb +12 -12
  30. data/lib/watir/elements/element.rb +6 -5
  31. data/lib/watir/elements/file_field.rb +41 -41
  32. data/lib/watir/elements/font.rb +25 -25
  33. data/lib/watir/elements/form.rb +16 -16
  34. data/lib/watir/elements/hidden.rb +25 -25
  35. data/lib/watir/elements/html_elements.rb +2035 -2035
  36. data/lib/watir/elements/iframe.rb +166 -166
  37. data/lib/watir/elements/image.rb +21 -21
  38. data/lib/watir/elements/input.rb +15 -15
  39. data/lib/watir/elements/link.rb +18 -18
  40. data/lib/watir/elements/list.rb +49 -49
  41. data/lib/watir/elements/option.rb +72 -72
  42. data/lib/watir/elements/radio.rb +60 -60
  43. data/lib/watir/elements/row.rb +17 -17
  44. data/lib/watir/elements/select.rb +250 -250
  45. data/lib/watir/elements/svg_elements.rb +613 -613
  46. data/lib/watir/elements/table.rb +76 -76
  47. data/lib/watir/elements/table_cell.rb +31 -31
  48. data/lib/watir/elements/table_row.rb +32 -32
  49. data/lib/watir/elements/table_section.rb +15 -15
  50. data/lib/watir/elements/text_area.rb +5 -5
  51. data/lib/watir/elements/text_field.rb +39 -39
  52. data/lib/watir/exception.rb +16 -16
  53. data/lib/watir/extensions/nokogiri.rb +14 -14
  54. data/lib/watir/generator.rb +3 -3
  55. data/lib/watir/generator/base.rb +11 -11
  56. data/lib/watir/generator/base/generator.rb +115 -115
  57. data/lib/watir/generator/base/idl_sorter.rb +47 -47
  58. data/lib/watir/generator/base/spec_extractor.rb +138 -138
  59. data/lib/watir/generator/base/util.rb +21 -21
  60. data/lib/watir/generator/base/visitor.rb +162 -162
  61. data/lib/watir/generator/html.rb +15 -15
  62. data/lib/watir/generator/html/generator.rb +36 -36
  63. data/lib/watir/generator/html/spec_extractor.rb +50 -50
  64. data/lib/watir/generator/html/visitor.rb +21 -21
  65. data/lib/watir/generator/svg.rb +7 -7
  66. data/lib/watir/generator/svg/generator.rb +38 -38
  67. data/lib/watir/generator/svg/spec_extractor.rb +53 -53
  68. data/lib/watir/generator/svg/visitor.rb +21 -21
  69. data/lib/watir/has_window.rb +68 -68
  70. data/lib/watir/js_execution.rb +143 -143
  71. data/lib/watir/js_snippets.rb +16 -16
  72. data/lib/watir/js_snippets/backgroundColor.js +7 -7
  73. data/lib/watir/js_snippets/fireEvent.js +31 -31
  74. data/lib/watir/js_snippets/focus.js +3 -3
  75. data/lib/watir/js_snippets/getInnerHtml.js +19 -19
  76. data/lib/watir/js_snippets/getInnerText.js +19 -19
  77. data/lib/watir/js_snippets/getOuterHtml.js +20 -20
  78. data/lib/watir/js_snippets/getTextContent.js +19 -19
  79. data/lib/watir/js_snippets/isImageLoaded.js +3 -3
  80. data/lib/watir/js_snippets/selectOptionsLabel.js +10 -10
  81. data/lib/watir/js_snippets/selectOptionsText.js +10 -10
  82. data/lib/watir/js_snippets/selectOptionsValue.js +10 -10
  83. data/lib/watir/js_snippets/selectText.js +64 -64
  84. data/lib/watir/js_snippets/selectedOptions.js +11 -11
  85. data/lib/watir/js_snippets/setValue.js +3 -3
  86. data/lib/watir/legacy_wait.rb +126 -126
  87. data/lib/watir/locators.rb +60 -60
  88. data/lib/watir/locators/button/locator.rb +31 -31
  89. data/lib/watir/locators/button/selector_builder.rb +30 -30
  90. data/lib/watir/locators/button/selector_builder/xpath.rb +29 -29
  91. data/lib/watir/locators/button/validator.rb +15 -15
  92. data/lib/watir/locators/cell/locator.rb +15 -15
  93. data/lib/watir/locators/cell/selector_builder.rb +24 -24
  94. data/lib/watir/locators/element/locator.rb +1 -0
  95. data/lib/watir/locators/element/selector_builder.rb +150 -150
  96. data/lib/watir/locators/element/selector_builder/xpath.rb +119 -119
  97. data/lib/watir/locators/element/validator.rb +18 -18
  98. data/lib/watir/locators/row/locator.rb +15 -15
  99. data/lib/watir/locators/row/selector_builder.rb +29 -29
  100. data/lib/watir/locators/text_area/locator.rb +13 -13
  101. data/lib/watir/locators/text_area/selector_builder.rb +22 -22
  102. data/lib/watir/locators/text_field/locator.rb +30 -30
  103. data/lib/watir/locators/text_field/selector_builder.rb +31 -31
  104. data/lib/watir/locators/text_field/selector_builder/xpath.rb +17 -17
  105. data/lib/watir/locators/text_field/validator.rb +12 -12
  106. data/lib/watir/logger.rb +109 -109
  107. data/lib/watir/radio_set.rb +231 -231
  108. data/lib/watir/row_container.rb +36 -36
  109. data/lib/watir/screenshot.rb +50 -50
  110. data/lib/watir/user_editable.rb +56 -56
  111. data/lib/watir/wait.rb +200 -200
  112. data/lib/watir/wait/timer.rb +52 -52
  113. data/lib/watir/window.rb +257 -257
  114. data/lib/watir/xpath_support.rb +20 -20
  115. data/lib/watirspec.rb +86 -86
  116. data/lib/watirspec/guards.rb +60 -60
  117. data/lib/watirspec/implementation.rb +51 -51
  118. data/lib/watirspec/rake_tasks.rb +115 -115
  119. data/lib/watirspec/remote_server.rb +38 -38
  120. data/lib/watirspec/runner.rb +53 -53
  121. data/lib/watirspec/server.rb +99 -99
  122. data/lib/watirspec/server/app.rb +76 -76
  123. data/spec/browser_spec.rb +278 -278
  124. data/spec/click_spec.rb +19 -19
  125. data/spec/container_spec.rb +34 -34
  126. data/spec/element_locator_spec.rb +517 -517
  127. data/spec/element_spec.rb +158 -158
  128. data/spec/implementation_spec.rb +24 -24
  129. data/spec/input_spec.rb +14 -14
  130. data/spec/locator_spec_helper.rb +55 -55
  131. data/spec/logger_spec.rb +46 -46
  132. data/spec/spec_helper.rb +22 -22
  133. data/spec/special_chars_spec.rb +13 -13
  134. data/spec/watirspec/adjacent_spec.rb +227 -227
  135. data/spec/watirspec/after_hooks_spec.rb +182 -182
  136. data/spec/watirspec/alert_spec.rb +108 -108
  137. data/spec/watirspec/attributes_spec.rb +16 -16
  138. data/spec/watirspec/browser_spec.rb +281 -281
  139. data/spec/watirspec/cookies_spec.rb +154 -154
  140. data/spec/watirspec/drag_and_drop_spec.rb +49 -49
  141. data/spec/watirspec/element_hidden_spec.rb +75 -75
  142. data/spec/watirspec/elements/area_spec.rb +72 -72
  143. data/spec/watirspec/elements/areas_spec.rb +42 -42
  144. data/spec/watirspec/elements/button_spec.rb +277 -277
  145. data/spec/watirspec/elements/buttons_spec.rb +55 -55
  146. data/spec/watirspec/elements/checkbox_spec.rb +275 -275
  147. data/spec/watirspec/elements/checkboxes_spec.rb +44 -44
  148. data/spec/watirspec/elements/collections_spec.rb +52 -52
  149. data/spec/watirspec/elements/dd_spec.rb +124 -124
  150. data/spec/watirspec/elements/dds_spec.rb +42 -42
  151. data/spec/watirspec/elements/del_spec.rb +126 -126
  152. data/spec/watirspec/elements/dels_spec.rb +40 -40
  153. data/spec/watirspec/elements/div_spec.rb +245 -245
  154. data/spec/watirspec/elements/divs_spec.rb +42 -42
  155. data/spec/watirspec/elements/dl_spec.rb +142 -142
  156. data/spec/watirspec/elements/dls_spec.rb +43 -43
  157. data/spec/watirspec/elements/dt_spec.rb +122 -122
  158. data/spec/watirspec/elements/dts_spec.rb +42 -42
  159. data/spec/watirspec/elements/element_spec.rb +483 -483
  160. data/spec/watirspec/elements/elements_spec.rb +47 -47
  161. data/spec/watirspec/elements/em_spec.rb +96 -96
  162. data/spec/watirspec/elements/ems_spec.rb +43 -43
  163. data/spec/watirspec/elements/filefield_spec.rb +170 -170
  164. data/spec/watirspec/elements/filefields_spec.rb +43 -43
  165. data/spec/watirspec/elements/font_spec.rb +29 -29
  166. data/spec/watirspec/elements/form_spec.rb +66 -66
  167. data/spec/watirspec/elements/forms_spec.rb +46 -46
  168. data/spec/watirspec/elements/frame_spec.rb +123 -123
  169. data/spec/watirspec/elements/frames_spec.rb +41 -41
  170. data/spec/watirspec/elements/hidden_spec.rb +104 -104
  171. data/spec/watirspec/elements/hiddens_spec.rb +43 -43
  172. data/spec/watirspec/elements/hn_spec.rb +92 -92
  173. data/spec/watirspec/elements/hns_spec.rb +38 -38
  174. data/spec/watirspec/elements/iframe_spec.rb +10 -0
  175. data/spec/watirspec/elements/iframes_spec.rb +47 -47
  176. data/spec/watirspec/elements/image_spec.rb +158 -158
  177. data/spec/watirspec/elements/images_spec.rb +40 -40
  178. data/spec/watirspec/elements/ins_spec.rb +127 -127
  179. data/spec/watirspec/elements/inses_spec.rb +40 -40
  180. data/spec/watirspec/elements/label_spec.rb +75 -75
  181. data/spec/watirspec/elements/labels_spec.rb +40 -40
  182. data/spec/watirspec/elements/li_spec.rb +111 -111
  183. data/spec/watirspec/elements/link_spec.rb +171 -171
  184. data/spec/watirspec/elements/links_spec.rb +44 -44
  185. data/spec/watirspec/elements/lis_spec.rb +42 -42
  186. data/spec/watirspec/elements/list_spec.rb +32 -32
  187. data/spec/watirspec/elements/map_spec.rb +75 -75
  188. data/spec/watirspec/elements/maps_spec.rb +41 -41
  189. data/spec/watirspec/elements/meta_spec.rb +23 -23
  190. data/spec/watirspec/elements/metas_spec.rb +40 -40
  191. data/spec/watirspec/elements/ol_spec.rb +87 -87
  192. data/spec/watirspec/elements/ols_spec.rb +40 -40
  193. data/spec/watirspec/elements/option_spec.rb +121 -121
  194. data/spec/watirspec/elements/p_spec.rb +111 -111
  195. data/spec/watirspec/elements/pre_spec.rb +111 -111
  196. data/spec/watirspec/elements/pres_spec.rb +40 -40
  197. data/spec/watirspec/elements/ps_spec.rb +40 -40
  198. data/spec/watirspec/elements/radio_spec.rb +273 -273
  199. data/spec/watirspec/elements/radios_spec.rb +43 -43
  200. data/spec/watirspec/elements/select_list_spec.rb +553 -553
  201. data/spec/watirspec/elements/select_lists_spec.rb +46 -46
  202. data/spec/watirspec/elements/span_spec.rb +128 -128
  203. data/spec/watirspec/elements/spans_spec.rb +40 -40
  204. data/spec/watirspec/elements/strong_spec.rb +88 -88
  205. data/spec/watirspec/elements/strongs_spec.rb +43 -43
  206. data/spec/watirspec/elements/table_nesting_spec.rb +51 -51
  207. data/spec/watirspec/elements/table_spec.rb +156 -156
  208. data/spec/watirspec/elements/tables_spec.rb +42 -42
  209. data/spec/watirspec/elements/tbody_spec.rb +93 -93
  210. data/spec/watirspec/elements/tbodys_spec.rb +62 -62
  211. data/spec/watirspec/elements/td_spec.rb +93 -93
  212. data/spec/watirspec/elements/tds_spec.rb +53 -53
  213. data/spec/watirspec/elements/text_field_spec.rb +360 -360
  214. data/spec/watirspec/elements/text_fields_spec.rb +44 -44
  215. data/spec/watirspec/elements/textarea_spec.rb +26 -26
  216. data/spec/watirspec/elements/textareas_spec.rb +24 -24
  217. data/spec/watirspec/elements/tfoot_spec.rb +86 -86
  218. data/spec/watirspec/elements/tfoots_spec.rb +68 -68
  219. data/spec/watirspec/elements/thead_spec.rb +86 -86
  220. data/spec/watirspec/elements/theads_spec.rb +68 -68
  221. data/spec/watirspec/elements/tr_spec.rb +78 -78
  222. data/spec/watirspec/elements/trs_spec.rb +61 -61
  223. data/spec/watirspec/elements/ul_spec.rb +76 -76
  224. data/spec/watirspec/elements/uls_spec.rb +39 -39
  225. data/spec/watirspec/html/alerts.html +12 -12
  226. data/spec/watirspec/html/aria_attributes.html +9 -9
  227. data/spec/watirspec/html/class_locator.html +8 -8
  228. data/spec/watirspec/html/clicks.html +19 -19
  229. data/spec/watirspec/html/closeable.html +12 -12
  230. data/spec/watirspec/html/collections.html +14 -14
  231. data/spec/watirspec/html/css/jquery-ui-1.8.17.custom.css +286 -286
  232. data/spec/watirspec/html/data_attributes.html +9 -9
  233. data/spec/watirspec/html/definition_lists.html +47 -47
  234. data/spec/watirspec/html/drag_and_drop.html +106 -106
  235. data/spec/watirspec/html/font.html +10 -10
  236. data/spec/watirspec/html/forms_with_input_elements.html +174 -174
  237. data/spec/watirspec/html/frame_1.html +22 -22
  238. data/spec/watirspec/html/frame_2.html +15 -15
  239. data/spec/watirspec/html/frames.html +10 -10
  240. data/spec/watirspec/html/hover.html +11 -11
  241. data/spec/watirspec/html/iframe_1.html +22 -22
  242. data/spec/watirspec/html/iframes.html +12 -12
  243. data/spec/watirspec/html/images.html +27 -27
  244. data/spec/watirspec/html/inner_outer.html +4 -4
  245. data/spec/watirspec/html/javascript/angular.min.js +331 -331
  246. data/spec/watirspec/html/javascript/helpers.js +16 -16
  247. data/spec/watirspec/html/javascript/jquery-1.7.1.min.js +3 -3
  248. data/spec/watirspec/html/javascript/jquery-ui-1.8.17.custom.min.js +67 -67
  249. data/spec/watirspec/html/keylogger.html +14 -14
  250. data/spec/watirspec/html/modal_dialog.html +9 -9
  251. data/spec/watirspec/html/multiple_ids.html +14 -14
  252. data/spec/watirspec/html/nested_elements.html +33 -33
  253. data/spec/watirspec/html/nested_frame_2.html +9 -9
  254. data/spec/watirspec/html/nested_frame_3.html +14 -14
  255. data/spec/watirspec/html/nested_frames.html +10 -10
  256. data/spec/watirspec/html/nested_iframe_2.html +12 -12
  257. data/spec/watirspec/html/nested_iframes.html +13 -13
  258. data/spec/watirspec/html/nested_tables.html +202 -202
  259. data/spec/watirspec/html/non_control_elements.html +140 -140
  260. data/spec/watirspec/html/removed_element.html +24 -24
  261. data/spec/watirspec/html/right_click.html +10 -10
  262. data/spec/watirspec/html/special_chars.html +11 -11
  263. data/spec/watirspec/html/tables.html +120 -120
  264. data/spec/watirspec/html/timeout_window_location.html +19 -19
  265. data/spec/watirspec/html/uneven_table.html +20 -20
  266. data/spec/watirspec/html/wait.html +84 -84
  267. data/spec/watirspec/html/window_switching.html +11 -11
  268. data/spec/watirspec/radio_set_spec.rb +336 -336
  269. data/spec/watirspec/relaxed_locate_spec.rb +99 -99
  270. data/spec/watirspec/screenshot_spec.rb +29 -29
  271. data/spec/watirspec/support/raise_exception_matchers.rb +36 -36
  272. data/spec/watirspec/wait_spec.rb +381 -381
  273. data/spec/watirspec/window_switching_spec.rb +415 -415
  274. data/spec/watirspec_helper.rb +161 -161
  275. data/support/appveyor.cmd +9 -9
  276. data/support/doctest_helper.rb +101 -101
  277. data/support/travis.sh +11 -11
  278. data/support/version_differ.rb +59 -59
  279. data/watir.gemspec +1 -1
  280. metadata +4 -170
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ec3596aac49e15a562c7085702a1e246fa0abb5e
4
- data.tar.gz: c2d652b8c6de8895b0004581ca07fc69e42d4d8f
3
+ metadata.gz: 3bd9cf054487252b20ae786abe0b4a89db67baf3
4
+ data.tar.gz: 120d86c9033ce97e3567376bcea69d85bcaa1dd7
5
5
  SHA512:
6
- metadata.gz: f8a5cca75e7d14deaaa47f6eba851a2ff082b6522bfef4f7d2b485f97040e2086142d58641ee51939e320c272bbc5a7fb3a6325b99db1c9cbbfc368b2ef95eb2
7
- data.tar.gz: fe12a324b627005ddd14f8473c00f7b8fd6fa3ccac864196af5220cdbd07aaf9150bbe52d87e148b5741dae2b50735fcf6c28b7ac69324b55fd662975f3382a4
6
+ metadata.gz: 27b2697e3ab3ac94193b18aa6a0820c74f016a30599fbfbd33f74ce14c4cd84db22fce33c2233ef281a3d3dc7a58e4674651a506f70edb159c09ef7743da0091
7
+ data.tar.gz: 10df89e7dccf3de7818df119dc615d723ae0b6db7154f0d390841843678c480a19995d0d05a603270713bcbd03c33fdc15cb7181684fcb2d8246e754a67c1190
data/.document CHANGED
@@ -1,5 +1,5 @@
1
- README.rdoc
2
- lib/**/*.rb
3
- bin/*
4
- features/**/*.feature
5
- LICENSE
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
@@ -1,16 +1,16 @@
1
- ## Meta -
2
- Watir Version:
3
- Selenium Version:
4
- Browser Version:
5
- Browser Driver Version:
6
- OS Version:
7
-
8
- ## Expected Behavior -
9
-
10
- ## Actual Behavior -
11
-
12
- ## Steps to reproduce -
13
- <!--
14
- Please be sure to include an SSCCE (Short, Self Contained, Correct [compilable] example) http://sscce.org/
15
- If you can't provide a link to the page, consider creating a reproducible page on https://jsfiddle.net/
16
- -->
1
+ ## Meta -
2
+ Watir Version:
3
+ Selenium Version:
4
+ Browser Version:
5
+ Browser Driver Version:
6
+ OS Version:
7
+
8
+ ## Expected Behavior -
9
+
10
+ ## Actual Behavior -
11
+
12
+ ## Steps to reproduce -
13
+ <!--
14
+ Please be sure to include an SSCCE (Short, Self Contained, Correct [compilable] example) http://sscce.org/
15
+ If you can't provide a link to the page, consider creating a reproducible page on https://jsfiddle.net/
16
+ -->
data/.gitignore CHANGED
@@ -1,21 +1,21 @@
1
- pkg/*
2
- *.gem
3
- .bundle
4
- *.sw?
5
- .DS_Store
6
- coverage
7
- rdoc
8
- .yardoc
9
- Gemfile.lock
10
- .rvmrc
11
- *.rbc
12
- .rbx/*
13
- chromedriver.log
14
- support/html.html
15
- support/svg.html
16
- /doc
17
- .idea
18
- .ruby-version
19
- .envrc
20
- .projections.json
21
- bin/
1
+ pkg/*
2
+ *.gem
3
+ .bundle
4
+ *.sw?
5
+ .DS_Store
6
+ coverage
7
+ rdoc
8
+ .yardoc
9
+ Gemfile.lock
10
+ .rvmrc
11
+ *.rbc
12
+ .rbx/*
13
+ chromedriver.log
14
+ support/html.html
15
+ support/svg.html
16
+ /doc
17
+ .idea
18
+ .ruby-version
19
+ .envrc
20
+ .projections.json
21
+ bin/
@@ -1,72 +1,72 @@
1
- # Please note that we should not be using container-based infrastructure
2
- # because Chrome requires a lot of shared memory and Travis does not allow
3
- # use host's /dev/shm.
4
- sudo: required
5
- dist: trusty
6
- cache: bundler
7
- notifications:
8
- slack:
9
- secure: BLsBCm33R32VNRccrLx9F0P24X6BVpVHj1OWaN4Kyn6g9qXteIwC2VKVMnKNbifpojfMkrn0OeFQFK1O1DSOsC3mgzn/udoB+DnUGcSemFUn04xhbYF5SI+3zGPKPo0JLvjjdEKSSma84YwKdrj88pGUK34p01gL8hiaqjFzWdk=
10
- before_script:
11
- - support/travis.sh
12
- - export PATH=~/.webdrivers:$PATH
13
-
14
- script: bundle exec rake $RAKE_TASK
15
-
16
- _version:
17
- two: &two
18
- language: ruby
19
- rvm: 2.2.7
20
- three: &three
21
- language: ruby
22
- rvm: 2.3.4
23
- four: &four
24
- language: ruby
25
- rvm: 2.4.1
26
-
27
- _browsers:
28
- firefox: &firefox-latest
29
- addons:
30
- firefox: latest
31
- chrome: &chrome
32
- addons:
33
- chrome: stable
34
-
35
- matrix:
36
- include:
37
- - env: RAKE_TASK=spec:remote_firefox
38
- <<: *four
39
- <<: *firefox-latest
40
- - env: RAKE_TASK=spec:remote_chrome
41
- <<: *four
42
- <<: *chrome
43
- - env: RAKE_TASK=spec:firefox RELAXED_LOCATE=false
44
- <<: *four
45
- <<: *firefox-latest
46
- - env: RAKE_TASK=spec:firefox
47
- <<: *four
48
- <<: *firefox-latest
49
- - env: RAKE_TASK=spec:firefox
50
- <<: *three
51
- <<: *firefox-latest
52
- - env: RAKE_TASK=spec:firefox
53
- <<: *two
54
- <<: *firefox-latest
55
- - env: RAKE_TASK=spec:chrome
56
- <<: *four
57
- <<: *chrome
58
- - env: RAKE_TASK=spec:chrome
59
- <<: *three
60
- <<: *chrome
61
- - env: RAKE_TASK=spec:chrome
62
- <<: *two
63
- <<: *chrome
64
- - env: RAKE_TASK=spec:chrome RELAXED_LOCATE=false
65
- <<: *four
66
- <<: *chrome
67
- - env: RAKE_TASK=spec:chrome HEADLESS=true
68
- <<: *four
69
- <<: *chrome
70
- - env: RAKE_TASK=yard:doctest
71
- <<: *four
72
- <<: *chrome
1
+ # Please note that we should not be using container-based infrastructure
2
+ # because Chrome requires a lot of shared memory and Travis does not allow
3
+ # use host's /dev/shm.
4
+ sudo: required
5
+ dist: trusty
6
+ cache: bundler
7
+ notifications:
8
+ slack:
9
+ secure: BLsBCm33R32VNRccrLx9F0P24X6BVpVHj1OWaN4Kyn6g9qXteIwC2VKVMnKNbifpojfMkrn0OeFQFK1O1DSOsC3mgzn/udoB+DnUGcSemFUn04xhbYF5SI+3zGPKPo0JLvjjdEKSSma84YwKdrj88pGUK34p01gL8hiaqjFzWdk=
10
+ before_script:
11
+ - support/travis.sh
12
+ - export PATH=~/.webdrivers:$PATH
13
+
14
+ script: bundle exec rake $RAKE_TASK
15
+
16
+ _version:
17
+ two: &two
18
+ language: ruby
19
+ rvm: 2.2.7
20
+ three: &three
21
+ language: ruby
22
+ rvm: 2.3.4
23
+ four: &four
24
+ language: ruby
25
+ rvm: 2.4.1
26
+
27
+ _browsers:
28
+ firefox: &firefox-latest
29
+ addons:
30
+ firefox: latest
31
+ chrome: &chrome
32
+ addons:
33
+ chrome: stable
34
+
35
+ matrix:
36
+ include:
37
+ - env: RAKE_TASK=spec:remote_firefox
38
+ <<: *four
39
+ <<: *firefox-latest
40
+ - env: RAKE_TASK=spec:remote_chrome
41
+ <<: *four
42
+ <<: *chrome
43
+ - env: RAKE_TASK=spec:firefox RELAXED_LOCATE=false
44
+ <<: *four
45
+ <<: *firefox-latest
46
+ - env: RAKE_TASK=spec:firefox
47
+ <<: *four
48
+ <<: *firefox-latest
49
+ - env: RAKE_TASK=spec:firefox
50
+ <<: *three
51
+ <<: *firefox-latest
52
+ - env: RAKE_TASK=spec:firefox
53
+ <<: *two
54
+ <<: *firefox-latest
55
+ - env: RAKE_TASK=spec:chrome
56
+ <<: *four
57
+ <<: *chrome
58
+ - env: RAKE_TASK=spec:chrome
59
+ <<: *three
60
+ <<: *chrome
61
+ - env: RAKE_TASK=spec:chrome
62
+ <<: *two
63
+ <<: *chrome
64
+ - env: RAKE_TASK=spec:chrome RELAXED_LOCATE=false
65
+ <<: *four
66
+ <<: *chrome
67
+ - env: RAKE_TASK=spec:chrome HEADLESS=true
68
+ <<: *four
69
+ <<: *chrome
70
+ - env: RAKE_TASK=yard:doctest
71
+ <<: *four
72
+ <<: *chrome
data/CHANGES.md CHANGED
@@ -1,3 +1,9 @@
1
+ ### 6.10.1 (2017-12-12)
2
+
3
+ * Fix bug in IFrame#present?
4
+ * Improve performance for Element#center (thanks Lucas Tierney)
5
+ * Skip tag name filter when locating by tag name
6
+
1
7
  ### 6.10.0 (2017-11-23)
2
8
 
3
9
  * Add support for locating elements with custom attributes
data/Gemfile CHANGED
@@ -1,16 +1,16 @@
1
- source "http://rubygems.org"
2
-
3
- unless ENV['TRAVIS']
4
- gem "simplecov", ">= 0.3.5", platform: :ruby_19
5
- end
6
-
7
- if ENV['LOCAL_WEBIDL']
8
- gem 'webidl', path: File.expand_path('../webidl')
9
- end
10
-
11
- if ENV['LOCAL_SELENIUM']
12
- gem 'selenium-webdriver', path: File.expand_path('../selenium/build/rb')
13
- end
14
-
15
- # Specify your gem's dependencies in watir.gemspec
16
- gemspec
1
+ source "http://rubygems.org"
2
+
3
+ unless ENV['TRAVIS']
4
+ gem "simplecov", ">= 0.3.5", platform: :ruby_19
5
+ end
6
+
7
+ if ENV['LOCAL_WEBIDL']
8
+ gem 'webidl', path: File.expand_path('../webidl')
9
+ end
10
+
11
+ if ENV['LOCAL_SELENIUM']
12
+ gem 'selenium-webdriver', path: File.expand_path('../selenium/build/rb')
13
+ end
14
+
15
+ # Specify your gem's dependencies in watir.gemspec
16
+ gemspec
data/LICENSE CHANGED
@@ -1,23 +1,23 @@
1
- (the MIT License)
2
-
3
- Copyright (c) 2009-2015 Jari Bakken
4
- Copyright (c) 2015-2017 Alex Rodionov, Titus Fortner
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining
7
- a copy of this software and associated documentation files (the
8
- "Software"), to deal in the Software without restriction, including
9
- without limitation the rights to use, copy, modify, merge, publish,
10
- distribute, sublicense, and/or sell copies of the Software, and to
11
- permit persons to whom the Software is furnished to do so, subject to
12
- the following conditions:
13
-
14
- The above copyright notice and this permission notice shall be
15
- included in all copies or substantial portions of the Software.
16
-
17
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
20
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
21
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
22
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
23
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1
+ (the MIT License)
2
+
3
+ Copyright (c) 2009-2015 Jari Bakken
4
+ Copyright (c) 2015-2017 Alex Rodionov, Titus Fortner
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining
7
+ a copy of this software and associated documentation files (the
8
+ "Software"), to deal in the Software without restriction, including
9
+ without limitation the rights to use, copy, modify, merge, publish,
10
+ distribute, sublicense, and/or sell copies of the Software, and to
11
+ permit persons to whom the Software is furnished to do so, subject to
12
+ the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be
15
+ included in all copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
20
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
21
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
22
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
23
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md CHANGED
@@ -1,106 +1,106 @@
1
- # watir
2
-
3
- Watir Powered By Selenium!
4
-
5
- [![Gem Version](https://badge.fury.io/rb/watir.svg)](http://badge.fury.io/rb/watir)
6
- [![Travis Status](https://travis-ci.org/watir/watir.svg?branch=master)](https://travis-ci.org/watir/watir)
7
- [![AppVeyor status](https://ci.appveyor.com/api/projects/status/9vbb7pp5p4uyoott/branch/master?svg=true)](https://ci.appveyor.com/project/p0deje/watir)
8
- [![Code Climate](https://codeclimate.com/github/watir/watir.svg)](https://codeclimate.com/github/watir/watir)
9
- [![Dependency Status](https://gemnasium.com/watir/watir.svg)](https://gemnasium.com/watir/watir)
10
- [![Coverage Status](https://coveralls.io/repos/watir/watir/badge.svg?branch=master)](https://coveralls.io/r/watir/watir)
11
-
12
- ## Example
13
-
14
- ```ruby
15
- require 'watir'
16
-
17
- browser = Watir::Browser.new
18
-
19
- browser.goto 'watir.com'
20
- browser.link(text: 'documentation').click
21
-
22
- puts browser.title
23
- # => 'Documentation – Watir Project...'
24
- browser.close
25
- ```
26
-
27
- ## Description
28
-
29
- The majority of element methods Watir provides with is autogenerated from specifications.
30
- This is done by extracting the IDL parts from the spec and processing them with the WebIDL gem (link below).
31
- Currently supported specifications are:
32
-
33
- * [HTML](https://www.whatwg.org/specs/web-apps/current-work/) (`lib/watir/elements/html_generated.rb`)
34
- * [SVG](http://www.w3.org/TR/SVG2/single-page.html) (`lib/watir/elements/svg_generated.rb`)
35
-
36
- ## Specs
37
-
38
- ### WatirSpec
39
-
40
- Watir uses WatirSpec for testing - an executable specification of Watir API.
41
-
42
- #### Using In Other Gems
43
-
44
- When developing Watir extension, you might want to make sure it's fully compatible with
45
- existing API. To achieve that, you can run WatirSpec against your own extension. Assuming
46
- your gem depends on Watir, you should do next:
47
-
48
- First, add WatirSpec Rake tasks to your gem:
49
-
50
- ```ruby
51
- # Rakefile
52
- require 'watirspec/rake_tasks'
53
- WatirSpec::RakeTasks.new
54
- ```
55
-
56
- Second, initialize WatirSpec for your gem:
57
-
58
- ```bash
59
- $ bundle exec rake watirspec:init
60
- ```
61
-
62
- After initialized, just follow the instructions to customize Watir implementation in use.
63
-
64
- ### Watir-specific Specs
65
-
66
- Specs specific to Watir are found in `spec/*_spec.rb`, with watirspec in `spec/watirspec/`.
67
-
68
- ## Doctests
69
-
70
- Watir uses [yard-doctest](https://github.com/p0deje/yard-doctest) for testing documentation examples.
71
-
72
- ```bash
73
- rake yard:doctest
74
- ```
75
-
76
- ## API Documentation
77
-
78
- * http://rdoc.info/gems/watir/ (updated on every release)
79
-
80
- ## See Also
81
-
82
- * http://watir.github.io
83
- * http://github.com/jarib/webidl
84
- * http://github.com/watir/watirspec
85
- * https://github.com/seleniumhq/selenium
86
-
87
- ## Dependencies
88
-
89
- * selenium-webdriver
90
- * rack (for watirspec)
91
-
92
- ## Note on Patches/Pull Requests
93
-
94
- * Fork the project.
95
- * Make your feature addition or bug fix.
96
- * Add tests for it. This is important so I don't break it in a
97
- future version unintentionally.
98
- * Commit, do not mess with Rakefile, version, or history.
99
- (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
100
- * Send me a pull request. Bonus points for topic branches.
101
-
102
- ## Copyright
103
-
104
- Copyright (c) 2009-2015 Jari Bakken
105
- Copyright (c) 2015-2017 Alex Rodionov, Titus Fortner
106
- See LICENSE for details
1
+ # watir
2
+
3
+ Watir Powered By Selenium!
4
+
5
+ [![Gem Version](https://badge.fury.io/rb/watir.svg)](http://badge.fury.io/rb/watir)
6
+ [![Travis Status](https://travis-ci.org/watir/watir.svg?branch=master)](https://travis-ci.org/watir/watir)
7
+ [![AppVeyor status](https://ci.appveyor.com/api/projects/status/9vbb7pp5p4uyoott/branch/master?svg=true)](https://ci.appveyor.com/project/p0deje/watir)
8
+ [![Code Climate](https://codeclimate.com/github/watir/watir.svg)](https://codeclimate.com/github/watir/watir)
9
+ [![Dependency Status](https://gemnasium.com/watir/watir.svg)](https://gemnasium.com/watir/watir)
10
+ [![Coverage Status](https://coveralls.io/repos/watir/watir/badge.svg?branch=master)](https://coveralls.io/r/watir/watir)
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'watir'
16
+
17
+ browser = Watir::Browser.new
18
+
19
+ browser.goto 'watir.com'
20
+ browser.link(text: 'documentation').click
21
+
22
+ puts browser.title
23
+ # => 'Documentation – Watir Project...'
24
+ browser.close
25
+ ```
26
+
27
+ ## Description
28
+
29
+ The majority of element methods Watir provides with is autogenerated from specifications.
30
+ This is done by extracting the IDL parts from the spec and processing them with the WebIDL gem (link below).
31
+ Currently supported specifications are:
32
+
33
+ * [HTML](https://www.whatwg.org/specs/web-apps/current-work/) (`lib/watir/elements/html_generated.rb`)
34
+ * [SVG](http://www.w3.org/TR/SVG2/single-page.html) (`lib/watir/elements/svg_generated.rb`)
35
+
36
+ ## Specs
37
+
38
+ ### WatirSpec
39
+
40
+ Watir uses WatirSpec for testing - an executable specification of Watir API.
41
+
42
+ #### Using In Other Gems
43
+
44
+ When developing Watir extension, you might want to make sure it's fully compatible with
45
+ existing API. To achieve that, you can run WatirSpec against your own extension. Assuming
46
+ your gem depends on Watir, you should do next:
47
+
48
+ First, add WatirSpec Rake tasks to your gem:
49
+
50
+ ```ruby
51
+ # Rakefile
52
+ require 'watirspec/rake_tasks'
53
+ WatirSpec::RakeTasks.new
54
+ ```
55
+
56
+ Second, initialize WatirSpec for your gem:
57
+
58
+ ```bash
59
+ $ bundle exec rake watirspec:init
60
+ ```
61
+
62
+ After initialized, just follow the instructions to customize Watir implementation in use.
63
+
64
+ ### Watir-specific Specs
65
+
66
+ Specs specific to Watir are found in `spec/*_spec.rb`, with watirspec in `spec/watirspec/`.
67
+
68
+ ## Doctests
69
+
70
+ Watir uses [yard-doctest](https://github.com/p0deje/yard-doctest) for testing documentation examples.
71
+
72
+ ```bash
73
+ rake yard:doctest
74
+ ```
75
+
76
+ ## API Documentation
77
+
78
+ * http://rdoc.info/gems/watir/ (updated on every release)
79
+
80
+ ## See Also
81
+
82
+ * http://watir.github.io
83
+ * http://github.com/jarib/webidl
84
+ * http://github.com/watir/watirspec
85
+ * https://github.com/seleniumhq/selenium
86
+
87
+ ## Dependencies
88
+
89
+ * selenium-webdriver
90
+ * rack (for watirspec)
91
+
92
+ ## Note on Patches/Pull Requests
93
+
94
+ * Fork the project.
95
+ * Make your feature addition or bug fix.
96
+ * Add tests for it. This is important so I don't break it in a
97
+ future version unintentionally.
98
+ * Commit, do not mess with Rakefile, version, or history.
99
+ (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
100
+ * Send me a pull request. Bonus points for topic branches.
101
+
102
+ ## Copyright
103
+
104
+ Copyright (c) 2009-2015 Jari Bakken
105
+ Copyright (c) 2015-2017 Alex Rodionov, Titus Fortner
106
+ See LICENSE for details