spreewald 2.4.2 → 2.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c226a047c194764d7645b43c70ab3b07d1a3e7a0d609a4e87dd8baab8e3c3a88
4
- data.tar.gz: ecdfa9f9aa7fe19da7bc3a8e2f7852a80d4d397f4342e873fe89a32276c9f9d0
3
+ metadata.gz: 1168c34206078cc51317c0b55250cd4413120277f76dd08207e33ab0ad14defb
4
+ data.tar.gz: 203c60be6904e5fbd56cc114a9e2b2bcc08cb50be8fa2f30159ef0a8041b4d6f
5
5
  SHA512:
6
- metadata.gz: d2e322bb7fb70096255ade88045b40408f0d1b0899120f159ea5831b65a40bc5a4d7d2bfb0b9b9ede7ba3f7b8aca0a904129076c7c49cafc7c6780bcd0e329d1
7
- data.tar.gz: 190918ee162ba71606593416c1ae87f1f963a92f316f10f0c7c50f6a3217c7bc1670ccd1412372faa75504d4c0bbff98bd7dd49b88470a3ee162f477052fff5b
6
+ metadata.gz: 17930b95e19e14be451f87fc2ebf13877b1b377f57a15a29f8d7feba1bcfbbd0f35405c107db24a3955e2741070f91fba5e77c6c4ff0f66199b46aee9a9cbd9c
7
+ data.tar.gz: 95584eefb31f7b90a6b9c49ec9bc9930aed8bead0fc4930075af317c9a5dd9131291d8f59b8696f30d409b77779fe8dcfdadf04dfe113344eba6374116523e8b
@@ -3,8 +3,19 @@ All notable changes to this project will be documented in this file.
3
3
 
4
4
  This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
5
5
 
6
+ ## 2.5.0
7
+ - Add a set of steps to control browser tabs (Selenium only):
8
+ * `I open ... in a new browser tab`
9
+ * `I close the browser tab`
10
+ * `I switch to the new browser tab`
11
+ * `I switch to the previous browser tab`
12
+ * `I may open a new browser tab` (required for the following step)
13
+ * `I should( not)? have opened a new browser tab`
14
+ * `there should be (\d+) browser tabs?`
15
+ * `there should be at least (\d+) browser tabs?`
16
+
6
17
  ## 2.4.2
7
- * Fix the step `I should( not)? see a link labeled "STRING"`, it is now overridable.
18
+ - Fix the step `I should( not)? see a link labeled "STRING"`, it is now overridable.
8
19
 
9
20
  ## 2.4.1
10
21
 
data/README.md CHANGED
@@ -38,6 +38,7 @@ single files like this:
38
38
  require 'spreewald/email_steps'
39
39
  require 'spreewald/web_steps'
40
40
 
41
+ Have a look at our [recommended Capybara defaults](#recommended-capybara-defaults) as they impact the behavior of many Spreewald steps.
41
42
 
42
43
  ## Spreewald binary
43
44
 
@@ -83,7 +84,7 @@ More info [here](https://makandracards.com/makandra/12139-waiting-for-page-load-
83
84
  Thanks to [cucumber_priority](https://github.com/makandra/cucumber_priority) you can override any step definition from Spreewald with your own pattern. Cucumber will not raise `Cucumber::Ambiguous` if your custom steps collide with a Spreewald step.
84
85
 
85
86
 
86
- ## A note on Capybara 3
87
+ ## Recommended Capybara defaults
87
88
 
88
89
  If you are upgrading from Capybara 2 to Capybara 3, you might [see failing tests](https://github.com/makandra/spreewald/issues/95) with Spreewald steps like `I should see`. This is caused by a breaking change in [Capybara's Finders](https://www.rubydoc.info/github/jnicklas/capybara/Capybara/Node/Finders) that accept a `:text` option. To activate Capybara 2 behavior globally in your project, enable this flag:
89
90
 
@@ -99,6 +100,12 @@ Furthermore, we recommend setting [Capybara's matching strategy](https://github.
99
100
  Capybara.match = :prefer_exact
100
101
  ````
101
102
 
103
+ If you want Spreewald to match fields, links and buttons against the `aria-label` attribute, enable the following global configuration in Capybara 2.8+:
104
+
105
+ ```ruby
106
+ Capybara.enable_aria_label = true
107
+ ```
108
+
102
109
  ## Contributing
103
110
 
104
111
  ### Testing
@@ -132,6 +139,54 @@ the step definitions.
132
139
 
133
140
  ## Steps
134
141
 
142
+ ### browser_tab_steps.rb
143
+
144
+ * **When I open ... in a new browser tab**
145
+
146
+ Opens [the page](https://github.com/makandra/spreewald/blob/master/examples/paths.rb) in a new browser tab and switches to it.
147
+
148
+
149
+ * **When I close the browser tab**
150
+
151
+ Closes the current browser tab and switches back to the first tab.
152
+
153
+
154
+ * **When I switch to the new(ly opened)? browser tab**
155
+
156
+ Waits for the new browser tab to appear, then switches to it.
157
+
158
+
159
+ * **When I switch( back)? to the previous browser tab**
160
+
161
+ Changes the browser context to the second-last browser tab.
162
+
163
+
164
+ * **When I may open a new browser tab**
165
+
166
+ Required for the check whether a new browser tab was opened or not.
167
+
168
+
169
+ * **Then I should( not)? have opened a new browser tab**
170
+
171
+ Example (positive expectation):
172
+
173
+ When I may open a new browser tab
174
+ And I click on "Open link in new browser tab"
175
+ Then I should have opened a new browser tab
176
+
177
+ Example (negative expectation):
178
+
179
+ When I may open a new browser tab
180
+ And I click on "Open link in current browser tab"
181
+ Then I should not have opened a new browser tab
182
+
183
+
184
+ * **Then there should be (\d+) browser tabs?**
185
+
186
+
187
+ * **Then there should be at least (\d+) browser tabs?**
188
+
189
+
135
190
  ### development_steps.rb
136
191
 
137
192
  * **Then it should work...?**
@@ -146,14 +201,14 @@ the step definitions.
146
201
  for its job)
147
202
 
148
203
 
149
- * **AfterStep @slow**
204
+ * **AfterStep @slow-motion**
150
205
 
151
206
  Waits 2 seconds after each step
152
207
 
153
208
 
154
- * **AfterStep @single**
209
+ * **AfterStep @single-step**
155
210
 
156
- Waits for keypress after each step
211
+ Waits for a keypress after each step
157
212
 
158
213
 
159
214
  ### email_steps.rb
@@ -643,9 +698,6 @@ deprecation notice. Decide for yourself whether you want to use them:
643
698
  * **When I enter "..." into the browser dialog**
644
699
 
645
700
 
646
- * **When I switch to the new tab**
647
-
648
-
649
701
  * **Then the "..." (field|button|checkbox) should( not)? be disabled**
650
702
 
651
703
  Tests that an input, button or checkbox with the given label is disabled.
data/Rakefile CHANGED
@@ -44,11 +44,16 @@ task :update_readme do
44
44
  require 'support/step_manager'
45
45
  end
46
46
 
47
- readme = File.read('README.md')
48
- start_of_steps_section = readme =~ /^## Steps/
49
- length_of_steps_section = (readme[(start_of_steps_section+1)..-1] =~ /^##[^#]/) || readme.size - start_of_steps_section
50
- readme[start_of_steps_section, length_of_steps_section] = "## Steps\n\n" + StepManager.new('lib/spreewald').to_markdown
51
- File.open(readme_path, 'w') { |f| f.write(readme) }
47
+ readme = File.read(readme_path)
48
+ File.open(readme_path, 'w') do |file|
49
+ start_of_steps_section = readme =~ /^## Steps/
50
+ length_of_steps_section = readme[(start_of_steps_section+1)..-1] =~ /^##[^#]/
51
+ length_of_steps_section ||= readme.size - start_of_steps_section
52
+ step_documentation = StepManager.new('lib/spreewald').to_markdown
53
+ readme[start_of_steps_section, length_of_steps_section] = "## Steps\n\n#{step_documentation}"
54
+
55
+ file.write(readme)
56
+ end
52
57
 
53
58
  system "git diff #{readme_path}"
54
59
  puts '', '> Done (diff applied).'
@@ -0,0 +1,91 @@
1
+ Before do
2
+ @previous_browser_tabs_count = nil
3
+ end
4
+
5
+ # Close all but the first browser tab
6
+ After do
7
+ next unless selenium_driver?
8
+
9
+ browser.switch_to.window(browser.window_handles.last)
10
+ while browser.window_handles.size > 1 do
11
+ browser.close
12
+ browser.switch_to.window(browser.window_handles.last)
13
+ end
14
+ end
15
+
16
+ # Opens [the page](https://github.com/makandra/spreewald/blob/master/examples/paths.rb) in a new browser tab and switches to it.
17
+ When /^I open (.+?) in a new browser tab$/ do |page_name|
18
+ require_selenium!
19
+ previous_handles_count = browser.window_handles.size
20
+ relative_target_path = path_to(page_name)
21
+
22
+ page.execute_script "window.open('#{relative_target_path}', '_blank')"
23
+ step "there should be #{previous_handles_count + 1} browser tabs"
24
+ step "I switch to the new browser tab"
25
+ end.overridable
26
+
27
+ # Closes the current browser tab and switches back to the first tab.
28
+ When 'I close the browser tab' do
29
+ require_selenium!
30
+ # Wait for browser tab to close
31
+ previous_handles_count = browser.window_handles.size
32
+ raise 'Cannot close the last remaining browser tab' if previous_handles_count == 1
33
+
34
+ browser.close
35
+ step "there should be #{previous_handles_count - 1} browser tabs"
36
+
37
+ # Closing the current tab causes Selenium to continue using a stale invalid tab handle
38
+ browser.switch_to.window(browser.window_handles.first)
39
+ end.overridable
40
+
41
+ # Waits for the new browser tab to appear, then switches to it.
42
+ When /^I switch to the new(?:ly opened)? browser tab$/ do
43
+ require_selenium!
44
+ step 'there should be at least 2 browser tabs'
45
+ browser.switch_to.window(browser.window_handles.last)
46
+ end.overridable
47
+
48
+ # Changes the browser context to the second-last browser tab.
49
+ When /^I switch(?: back)? to the previous browser tab$/ do
50
+ require_selenium!
51
+ previous_handle = browser.window_handles[-2] # Second last should be the previous browser tab
52
+ previous_handle ||= browser.window_handles.first # Fall back if only one tab is left
53
+ browser.switch_to.window(previous_handle)
54
+ end.overridable
55
+
56
+ # Required for the check whether a new browser tab was opened or not.
57
+ When 'I may open a new browser tab' do
58
+ @previous_browser_tabs_count = browser.window_handles.size
59
+ end.overridable
60
+
61
+ # Example (positive expectation):
62
+ #
63
+ # When I may open a new browser tab
64
+ # And I click on "Open link in new browser tab"
65
+ # Then I should have opened a new browser tab
66
+ #
67
+ # Example (negative expectation):
68
+ #
69
+ # When I may open a new browser tab
70
+ # And I click on "Open link in current browser tab"
71
+ # Then I should not have opened a new browser tab
72
+ Then /^I should( not)? have opened a new browser tab$/ do |negate|
73
+ raise "you need to use the 'I may open a new tab' step beforehand" unless @previous_browser_tabs_count
74
+ expected_browser_tab_count = negate ? @previous_browser_tabs_count : (@previous_browser_tabs_count + 1)
75
+
76
+ step "there should be #{expected_browser_tab_count} browser tabs"
77
+ end.overridable
78
+
79
+ Then /^there should be (\d+) browser tabs?$/ do |expected_browser_tabs|
80
+ patiently do
81
+ actual_browser_tabs = browser.window_handles.size
82
+ expect(actual_browser_tabs).to eq(expected_browser_tabs.to_i), "Expected #{expected_browser_tabs} browser tab to be open, but found #{actual_browser_tabs}"
83
+ end
84
+ end.overridable
85
+
86
+ Then /^there should be at least (\d+) browser tabs?$/ do |expected_browser_tabs|
87
+ patiently do
88
+ actual_browser_tabs = browser.window_handles.size
89
+ expect(actual_browser_tabs).to be >= (expected_browser_tabs.to_i), "Expected at least #{expected_browser_tabs} browser tab to be open, but found #{actual_browser_tabs}"
90
+ end
91
+ end.overridable
@@ -57,7 +57,7 @@ AfterStep('@slow-motion') do
57
57
  sleep 2
58
58
  end
59
59
 
60
- # Waits for keypress after each step
60
+ # Waits for a keypress after each step
61
61
  AfterStep('@single-step') do
62
62
  print "Single Stepping. Hit enter to continue"
63
63
  STDIN.getc
@@ -641,32 +641,24 @@ end.overridable
641
641
 
642
642
  When /^I confirm the browser dialog$/ do
643
643
  patiently do
644
- page.driver.browser.switch_to.alert.accept
644
+ browser.switch_to.alert.accept
645
645
  end
646
646
  end.overridable
647
647
 
648
648
  When /^I cancel the browser dialog$/ do
649
649
  patiently do
650
- page.driver.browser.switch_to.alert.dismiss
650
+ browser.switch_to.alert.dismiss
651
651
  end
652
652
  end.overridable
653
653
 
654
654
  When /^I enter "([^"]*)" into the browser dialog$/ do |text|
655
655
  patiently do
656
- alert = page.driver.browser.switch_to.alert
656
+ alert = browser.switch_to.alert
657
657
  alert.send_keys(text)
658
658
  alert.accept
659
659
  end
660
660
  end.overridable
661
661
 
662
- When /^I switch to the new tab$/ do
663
- if javascript_capable?
664
- page.driver.browser.switch_to.window(page.driver.browser.window_handles.last)
665
- else
666
- raise("This step works only with selenium")
667
- end
668
- end.overridable
669
-
670
662
  # Tests that an input, button or checkbox with the given label is disabled.
671
663
  Then /^the "([^\"]*)" (field|button|checkbox) should( not)? be disabled$/ do |label, kind, negate|
672
664
  if Spreewald::Comparison.compare_versions(Capybara::VERSION, :<, "2.1")
@@ -728,7 +720,7 @@ When /^I perform basic authentication as "([^\"]*)\/([^\"]*)" and go to (.*)$/ d
728
720
  visit("http://#{user}:#{password}@#{server.host}:#{server.port}#{path}")
729
721
  else
730
722
  authorizers = [
731
- (page.driver.browser if page.driver.respond_to?(:browser)),
723
+ (browser),
732
724
  (self),
733
725
  (page.driver)
734
726
  ].compact
@@ -17,6 +17,14 @@ module Spreewald
17
17
  Object.const_defined?('Capybara::Webkit') && Capybara.current_session.driver.is_a?(Capybara::Webkit::Driver)
18
18
  end
19
19
 
20
+ def browser
21
+ page.driver.browser if page.driver.respond_to?(:browser)
22
+ end
23
+
24
+ def require_selenium!
25
+ raise 'This step only works with Selenium' unless selenium_driver?
26
+ end
27
+
20
28
  end
21
29
  end
22
30
 
@@ -1,3 +1,3 @@
1
1
  module Spreewald
2
- VERSION = '2.4.2'
2
+ VERSION = '2.5.0'
3
3
  end
@@ -37,7 +37,7 @@ class StepDefinition
37
37
 
38
38
  def pretty_step
39
39
  if kind == 'AfterStep'
40
- step[/@\w+/]
40
+ step[/@[\w-]+/]
41
41
  elsif step =~ /^'(.*)'$/ # Surrounded by single quotes
42
42
  $1
43
43
  else
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (2.4.2)
4
+ spreewald (2.5.0)
5
5
  cucumber
6
6
  cucumber_priority (>= 0.3.0)
7
7
  rspec (>= 2.13.0)
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (2.4.2)
4
+ spreewald (2.5.0)
5
5
  cucumber
6
6
  cucumber_priority (>= 0.3.0)
7
7
  rspec (>= 2.13.0)
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (2.4.1)
4
+ spreewald (2.5.0)
5
5
  cucumber
6
6
  cucumber_priority (>= 0.3.0)
7
7
  rspec (>= 2.13.0)
@@ -22,4 +22,4 @@ group :test do
22
22
  gem 'selenium-webdriver'
23
23
  gem 'rspec-rails'
24
24
  gem 'spreewald', :path => '../..'
25
- end
25
+ end
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (2.4.1)
4
+ spreewald (2.5.0)
5
5
  cucumber
6
6
  cucumber_priority (>= 0.3.0)
7
7
  rspec (>= 2.13.0)
@@ -21,6 +21,15 @@ class StaticPagesController < ApplicationController
21
21
  def see_element
22
22
  end
23
23
 
24
+ def tab_1
25
+ end
26
+
27
+ def tab_2
28
+ end
29
+
30
+ def tab_3
31
+ end
32
+
24
33
  def visibility
25
34
  end
26
35
 
@@ -0,0 +1,3 @@
1
+ %h1 First browser tab
2
+ %a(href='/static_pages/tab_2' target='_blank') Click to open tab 2
3
+ %a(href='/static_pages/tab_2') Follow link WITHOUT opening a new tab
@@ -0,0 +1,2 @@
1
+ %h1 Second browser tab
2
+ %a(href='/static_pages/tab_3' target='_blank') Click to open tab 3
@@ -0,0 +1 @@
1
+ %h1 Third browser tab
@@ -18,15 +18,18 @@ Rails.application.routes.draw do
18
18
 
19
19
  get '/static_pages/click_on', to: 'static_pages#click_on'
20
20
  get '/static_pages/home', to: 'static_pages#home'
21
+ get '/static_pages/link_target', to: 'static_pages#link_target'
21
22
  get '/static_pages/link_to_home', to: 'static_pages#link_to_home'
22
23
  get '/static_pages/links', to: 'static_pages#links'
23
24
  get '/static_pages/numbers', to: 'static_pages#numbers'
24
25
  get '/static_pages/overridden', to: 'static_pages#overridden'
26
+ get '/static_pages/second_link_target', to: 'static_pages#second_link_target'
25
27
  get '/static_pages/see_element', to: 'static_pages#see_element'
28
+ get '/static_pages/tab_1', to: 'static_pages#tab_1'
29
+ get '/static_pages/tab_2', to: 'static_pages#tab_2'
30
+ get '/static_pages/tab_3', to: 'static_pages#tab_3'
26
31
  get '/static_pages/visibility', to: 'static_pages#visibility'
27
32
  get '/static_pages/within', to: 'static_pages#within'
28
- get '/static_pages/link_target', to: 'static_pages#link_target'
29
- get '/static_pages/second_link_target', to: 'static_pages#second_link_target'
30
33
 
31
34
  get '/tables/table1', to: 'tables#table1'
32
35
  get '/tables/table_with_weird_spaces', to: 'tables#table_with_weird_spaces'
@@ -0,0 +1,103 @@
1
+ @javascript
2
+ Feature: Browser tab steps
3
+
4
+ Background: Access some content in a first tab
5
+ Given I go to "/static_pages/tab_1"
6
+ Then I should see "First browser tab"
7
+ And there should be 1 browser tab
8
+
9
+
10
+ Scenario: I open (.+?) in a new browser tab
11
+ When I open "/static_pages/tab_2" in a new browser tab
12
+ Then I should see "Second browser tab"
13
+ And there should be 2 browser tabs
14
+
15
+ When I open "/static_pages/tab_3" in a new browser tab
16
+ Then I should see "Third browser tab"
17
+ And there should be 3 browser tabs
18
+
19
+
20
+ Scenario: I close the browser tab
21
+ When I open "/static_pages/tab_2" in a new browser tab
22
+ And I open "/static_pages/tab_3" in a new browser tab
23
+ Then I should see "Third browser tab"
24
+ And there should be 3 browser tabs
25
+
26
+ When I close the browser tab
27
+ Then there should be 2 browser tabs
28
+ And I should see "First browser tab"
29
+
30
+ When I close the browser tab
31
+ Then there should be 1 browser tab
32
+ And I should see "Second browser tab"
33
+
34
+
35
+ Scenario: I switch to the new(?:ly opened)? browser tab
36
+ When I follow "Click to open tab 2"
37
+ Then I should see "First browser tab"
38
+
39
+ When I switch to the newly opened browser tab
40
+ Then I should see "Second browser tab"
41
+
42
+ When I follow "Click to open tab 3"
43
+ And I switch to the new browser tab
44
+ Then I should see "Third browser tab"
45
+
46
+
47
+ Scenario: I switch(?: back)? to the previous browser tab
48
+ When I open "/static_pages/tab_2" in a new browser tab
49
+ Then I should see "Second browser tab"
50
+ And there should be 2 browser tabs
51
+
52
+ When I switch back to the previous browser tab
53
+ Then I should see "First browser tab"
54
+ And there should be 2 browser tabs
55
+
56
+ And I open "/static_pages/tab_3" in a new browser tab
57
+ Then I should see "Third browser tab"
58
+ And there should be 3 browser tabs
59
+
60
+ When I switch to the previous browser tab
61
+ Then I should see "Second browser tab"
62
+ And there should be 3 browser tabs
63
+
64
+
65
+ Scenario: I should have opened a new browser tab
66
+ This step must be preceded by "I may open a new browser tab"
67
+
68
+ When I may open a new browser tab
69
+ And I follow "Click to open tab 2"
70
+ Then I should have opened a new browser tab
71
+ And there should be 2 browser tabs
72
+
73
+
74
+ Scenario: I should not have opened a new browser tab
75
+ This step must be preceded by "I may open a new browser tab"
76
+
77
+ When I may open a new browser tab
78
+ And I follow "Follow link WITHOUT opening a new tab"
79
+ Then I should not have opened a new browser tab
80
+ And there should be 1 browser tabs
81
+
82
+
83
+ Scenario: there should be (\d+) browser tabs?
84
+ Given there should be 1 browser tab
85
+ When I open "/static_pages/tab_2" in a new browser tab
86
+ Then there should be 2 browser tabs
87
+
88
+ When I open "/static_pages/tab_3" in a new browser tab
89
+ Then there should be 3 browser tabs
90
+
91
+ When I open "/static_pages/tab_3" in a new browser tab
92
+ Then there should be 4 browser tabs
93
+
94
+
95
+ Scenario: there should be at least (\d+) browser tabs?
96
+ Given there should be at least 1 browser tab
97
+ When I open "/static_pages/tab_2" in a new browser tab
98
+ Then there should be at least 2 browser tabs
99
+
100
+ When I open "/static_pages/tab_3" in a new browser tab
101
+ Then there should be at least 1 browser tabs
102
+ Then there should be at least 2 browser tabs
103
+ Then there should be at least 3 browser tabs
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spreewald
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.2
4
+ version: 2.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tobias Kraze
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-22 00:00:00.000000000 Z
11
+ date: 2020-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber
@@ -154,6 +154,7 @@ files:
154
154
  - features/support/aruba.rb
155
155
  - lib/spreewald.rb
156
156
  - lib/spreewald/all_steps.rb
157
+ - lib/spreewald/browser_tab_steps.rb
157
158
  - lib/spreewald/development_steps.rb
158
159
  - lib/spreewald/email_steps.rb
159
160
  - lib/spreewald/file_attachment_steps.rb
@@ -349,6 +350,9 @@ files:
349
350
  - tests/shared/app/views/static_pages/numbers.html.haml
350
351
  - tests/shared/app/views/static_pages/overridden.html.haml
351
352
  - tests/shared/app/views/static_pages/see_element.html.haml
353
+ - tests/shared/app/views/static_pages/tab_1.haml
354
+ - tests/shared/app/views/static_pages/tab_2.haml
355
+ - tests/shared/app/views/static_pages/tab_3.haml
352
356
  - tests/shared/app/views/static_pages/visibility.html.haml
353
357
  - tests/shared/app/views/static_pages/within.html.haml
354
358
  - tests/shared/app/views/tables/table1.html.haml
@@ -359,6 +363,7 @@ files:
359
363
  - tests/shared/db/development.sqlite3
360
364
  - tests/shared/db/migrate/.keep
361
365
  - tests/shared/db/schema.rb
366
+ - tests/shared/features/shared/browser_tab_steps.feature
362
367
  - tests/shared/features/shared/development_steps.feature
363
368
  - tests/shared/features/shared/email_steps.feature
364
369
  - tests/shared/features/shared/overriding.feature
@@ -391,7 +396,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
391
396
  - !ruby/object:Gem::Version
392
397
  version: '0'
393
398
  requirements: []
394
- rubygems_version: 3.1.2
399
+ rubygems_version: 3.1.4
395
400
  signing_key:
396
401
  specification_version: 4
397
402
  summary: Collection of useful cucumber steps.
@@ -564,6 +569,9 @@ test_files:
564
569
  - tests/shared/app/views/static_pages/numbers.html.haml
565
570
  - tests/shared/app/views/static_pages/overridden.html.haml
566
571
  - tests/shared/app/views/static_pages/see_element.html.haml
572
+ - tests/shared/app/views/static_pages/tab_1.haml
573
+ - tests/shared/app/views/static_pages/tab_2.haml
574
+ - tests/shared/app/views/static_pages/tab_3.haml
567
575
  - tests/shared/app/views/static_pages/visibility.html.haml
568
576
  - tests/shared/app/views/static_pages/within.html.haml
569
577
  - tests/shared/app/views/tables/table1.html.haml
@@ -574,6 +582,7 @@ test_files:
574
582
  - tests/shared/db/development.sqlite3
575
583
  - tests/shared/db/migrate/.keep
576
584
  - tests/shared/db/schema.rb
585
+ - tests/shared/features/shared/browser_tab_steps.feature
577
586
  - tests/shared/features/shared/development_steps.feature
578
587
  - tests/shared/features/shared/email_steps.feature
579
588
  - tests/shared/features/shared/overriding.feature