capybara 3.15.0 → 3.17.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 (70) hide show
  1. checksums.yaml +4 -4
  2. data/History.md +39 -0
  3. data/README.md +3 -3
  4. data/lib/capybara/config.rb +1 -2
  5. data/lib/capybara/helpers.rb +1 -1
  6. data/lib/capybara/node/actions.rb +6 -6
  7. data/lib/capybara/node/base.rb +5 -5
  8. data/lib/capybara/node/element.rb +5 -5
  9. data/lib/capybara/node/finders.rb +7 -5
  10. data/lib/capybara/node/simple.rb +3 -2
  11. data/lib/capybara/queries/base_query.rb +1 -1
  12. data/lib/capybara/queries/selector_query.rb +7 -7
  13. data/lib/capybara/queries/style_query.rb +1 -1
  14. data/lib/capybara/rack_test/form.rb +1 -1
  15. data/lib/capybara/registrations/drivers.rb +36 -0
  16. data/lib/capybara/registrations/servers.rb +38 -0
  17. data/lib/capybara/result.rb +2 -2
  18. data/lib/capybara/rspec/matcher_proxies.rb +2 -2
  19. data/lib/capybara/rspec/matchers/base.rb +2 -2
  20. data/lib/capybara/rspec/matchers.rb +1 -1
  21. data/lib/capybara/selector/css.rb +3 -3
  22. data/lib/capybara/selector/filters/base.rb +1 -1
  23. data/lib/capybara/selector/selector.rb +1 -0
  24. data/lib/capybara/selector/xpath_extensions.rb +8 -0
  25. data/lib/capybara/selector.rb +117 -102
  26. data/lib/capybara/selenium/driver.rb +97 -48
  27. data/lib/capybara/selenium/driver_specializations/chrome_driver.rb +16 -4
  28. data/lib/capybara/selenium/driver_specializations/firefox_driver.rb +23 -0
  29. data/lib/capybara/selenium/driver_specializations/internet_explorer_driver.rb +5 -0
  30. data/lib/capybara/selenium/driver_specializations/safari_driver.rb +13 -0
  31. data/lib/capybara/selenium/extensions/find.rb +48 -37
  32. data/lib/capybara/selenium/extensions/html5_drag.rb +3 -1
  33. data/lib/capybara/selenium/logger_suppressor.rb +29 -0
  34. data/lib/capybara/selenium/node.rb +22 -8
  35. data/lib/capybara/selenium/nodes/chrome_node.rb +8 -4
  36. data/lib/capybara/selenium/patches/persistent_client.rb +20 -0
  37. data/lib/capybara/server/animation_disabler.rb +1 -1
  38. data/lib/capybara/server/checker.rb +1 -1
  39. data/lib/capybara/server/middleware.rb +3 -3
  40. data/lib/capybara/session/config.rb +2 -8
  41. data/lib/capybara/session.rb +9 -5
  42. data/lib/capybara/spec/session/attach_file_spec.rb +1 -1
  43. data/lib/capybara/spec/session/check_spec.rb +4 -4
  44. data/lib/capybara/spec/session/choose_spec.rb +2 -2
  45. data/lib/capybara/spec/session/click_button_spec.rb +28 -1
  46. data/lib/capybara/spec/session/fill_in_spec.rb +2 -2
  47. data/lib/capybara/spec/session/find_spec.rb +1 -1
  48. data/lib/capybara/spec/session/frame/switch_to_frame_spec.rb +14 -1
  49. data/lib/capybara/spec/session/frame/within_frame_spec.rb +12 -1
  50. data/lib/capybara/spec/session/has_css_spec.rb +9 -2
  51. data/lib/capybara/spec/session/has_table_spec.rb +4 -4
  52. data/lib/capybara/spec/session/node_spec.rb +18 -6
  53. data/lib/capybara/spec/session/uncheck_spec.rb +2 -2
  54. data/lib/capybara/spec/session/unselect_spec.rb +1 -1
  55. data/lib/capybara/spec/spec_helper.rb +1 -1
  56. data/lib/capybara/spec/views/frame_child.erb +2 -1
  57. data/lib/capybara/spec/views/react.erb +45 -0
  58. data/lib/capybara/version.rb +1 -1
  59. data/lib/capybara/window.rb +1 -1
  60. data/lib/capybara.rb +2 -70
  61. data/spec/minitest_spec_spec.rb +1 -1
  62. data/spec/result_spec.rb +10 -6
  63. data/spec/rspec/shared_spec_matchers.rb +8 -4
  64. data/spec/sauce_spec_chrome.rb +42 -0
  65. data/spec/selector_spec.rb +4 -0
  66. data/spec/selenium_spec_safari.rb +2 -3
  67. data/spec/session_spec.rb +7 -0
  68. data/spec/shared_selenium_session.rb +14 -12
  69. data/spec/spec_helper.rb +2 -1
  70. metadata +37 -17
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.15.0
4
+ version: 3.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Walpole
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain:
12
12
  - gem-public_cert.pem
13
- date: 2019-03-19 00:00:00.000000000 Z
13
+ date: 2019-04-18 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: addressable
@@ -152,20 +152,6 @@ dependencies:
152
152
  - - ">="
153
153
  - !ruby/object:Gem::Version
154
154
  version: '0'
155
- - !ruby/object:Gem::Dependency
156
- name: fuubar
157
- requirement: !ruby/object:Gem::Requirement
158
- requirements:
159
- - - ">="
160
- - !ruby/object:Gem::Version
161
- version: 1.0.0
162
- type: :development
163
- prerelease: false
164
- version_requirements: !ruby/object:Gem::Requirement
165
- requirements:
166
- - - ">="
167
- - !ruby/object:Gem::Version
168
- version: 1.0.0
169
155
  - !ruby/object:Gem::Dependency
170
156
  name: irb
171
157
  requirement: !ruby/object:Gem::Requirement
@@ -264,6 +250,20 @@ dependencies:
264
250
  - - ">="
265
251
  - !ruby/object:Gem::Version
266
252
  version: '0'
253
+ - !ruby/object:Gem::Dependency
254
+ name: rubocop-performance
255
+ requirement: !ruby/object:Gem::Requirement
256
+ requirements:
257
+ - - ">="
258
+ - !ruby/object:Gem::Version
259
+ version: '0'
260
+ type: :development
261
+ prerelease: false
262
+ version_requirements: !ruby/object:Gem::Requirement
263
+ requirements:
264
+ - - ">="
265
+ - !ruby/object:Gem::Version
266
+ version: '0'
267
267
  - !ruby/object:Gem::Dependency
268
268
  name: rubocop-rspec
269
269
  requirement: !ruby/object:Gem::Requirement
@@ -278,6 +278,20 @@ dependencies:
278
278
  - - ">="
279
279
  - !ruby/object:Gem::Version
280
280
  version: '0'
281
+ - !ruby/object:Gem::Dependency
282
+ name: sauce_whisk
283
+ requirement: !ruby/object:Gem::Requirement
284
+ requirements:
285
+ - - ">="
286
+ - !ruby/object:Gem::Version
287
+ version: '0'
288
+ type: :development
289
+ prerelease: false
290
+ version_requirements: !ruby/object:Gem::Requirement
291
+ requirements:
292
+ - - ">="
293
+ - !ruby/object:Gem::Version
294
+ version: '0'
281
295
  - !ruby/object:Gem::Dependency
282
296
  name: selenium-webdriver
283
297
  requirement: !ruby/object:Gem::Requirement
@@ -379,6 +393,8 @@ files:
379
393
  - lib/capybara/rack_test/form.rb
380
394
  - lib/capybara/rack_test/node.rb
381
395
  - lib/capybara/rails.rb
396
+ - lib/capybara/registrations/drivers.rb
397
+ - lib/capybara/registrations/servers.rb
382
398
  - lib/capybara/result.rb
383
399
  - lib/capybara/rspec.rb
384
400
  - lib/capybara/rspec/features.rb
@@ -414,11 +430,13 @@ files:
414
430
  - lib/capybara/selenium/extensions/find.rb
415
431
  - lib/capybara/selenium/extensions/html5_drag.rb
416
432
  - lib/capybara/selenium/extensions/scroll.rb
433
+ - lib/capybara/selenium/logger_suppressor.rb
417
434
  - lib/capybara/selenium/node.rb
418
435
  - lib/capybara/selenium/nodes/chrome_node.rb
419
436
  - lib/capybara/selenium/nodes/firefox_node.rb
420
437
  - lib/capybara/selenium/nodes/safari_node.rb
421
438
  - lib/capybara/selenium/patches/pause_duration_fix.rb
439
+ - lib/capybara/selenium/patches/persistent_client.rb
422
440
  - lib/capybara/server.rb
423
441
  - lib/capybara/server/animation_disabler.rb
424
442
  - lib/capybara/server/checker.rb
@@ -538,6 +556,7 @@ files:
538
556
  - lib/capybara/spec/views/popup_one.erb
539
557
  - lib/capybara/spec/views/popup_two.erb
540
558
  - lib/capybara/spec/views/postback.erb
559
+ - lib/capybara/spec/views/react.erb
541
560
  - lib/capybara/spec/views/scroll.erb
542
561
  - lib/capybara/spec/views/tables.erb
543
562
  - lib/capybara/spec/views/with_animation.erb
@@ -584,6 +603,7 @@ files:
584
603
  - spec/rspec/views_spec.rb
585
604
  - spec/rspec_matchers_spec.rb
586
605
  - spec/rspec_spec.rb
606
+ - spec/sauce_spec_chrome.rb
587
607
  - spec/selector_spec.rb
588
608
  - spec/selenium_spec_chrome.rb
589
609
  - spec/selenium_spec_chrome_remote.rb
@@ -611,7 +631,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
611
631
  requirements:
612
632
  - - ">="
613
633
  - !ruby/object:Gem::Version
614
- version: 2.3.0
634
+ version: 2.4.0
615
635
  required_rubygems_version: !ruby/object:Gem::Requirement
616
636
  requirements:
617
637
  - - ">="