spreewald 1.12.5 → 1.12.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/README.md +1 -1
  4. data/lib/spreewald/web_steps.rb +2 -2
  5. data/lib/spreewald_support/version.rb +1 -1
  6. data/tests/rails-3_capybara-1/Gemfile.lock +1 -1
  7. data/tests/rails-3_capybara-1/config/cucumber.yml +2 -0
  8. data/tests/rails-3_capybara-1/config/database.yml +7 -0
  9. data/tests/rails-3_capybara-1/features/support/paths.rb +16 -0
  10. data/tests/rails-3_capybara-1/features/support/selectors.rb +52 -0
  11. data/tests/rails-3_capybara-2/Gemfile.lock +1 -1
  12. data/tests/rails-3_capybara-2/Rakefile +18 -0
  13. data/tests/rails-4_capybara-3/Gemfile.lock +1 -1
  14. data/tests/rails-4_capybara-3/features/development_steps.feature +8 -0
  15. data/tests/rails-4_capybara-3/features/email_steps.feature +133 -0
  16. data/tests/rails-4_capybara-3/features/overriding.feature +5 -0
  17. data/tests/rails-4_capybara-3/features/step_definitions/overriding_steps.rb +3 -0
  18. data/tests/rails-4_capybara-3/features/step_definitions/test_steps.rb +43 -0
  19. data/tests/rails-4_capybara-3/features/support/paths.rb +16 -0
  20. data/tests/rails-4_capybara-3/features/support/selectors.rb +52 -0
  21. data/tests/rails-4_capybara-3/features/table_steps.feature +293 -0
  22. data/tests/rails-4_capybara-3/features/web_steps.feature +184 -0
  23. data/tests/shared/app/views/static_pages/see_element.html.haml +2 -1
  24. data/tests/shared/app/views/static_pages/within.html.haml +1 -1
  25. data/tests/shared/features/shared/web_steps.feature +21 -6
  26. data/tests/shared/features/support/selectors.rb +6 -0
  27. metadata +3 -25
  28. data/tests/rails-3_capybara-1/app +0 -1
  29. data/tests/rails-3_capybara-1/config/cucumber.yml +0 -1
  30. data/tests/rails-3_capybara-1/config/database.yml +0 -1
  31. data/tests/rails-3_capybara-1/db +0 -1
  32. data/tests/rails-3_capybara-1/features/shared +0 -1
  33. data/tests/rails-3_capybara-1/features/support/paths.rb +0 -1
  34. data/tests/rails-3_capybara-1/features/support/selectors.rb +0 -1
  35. data/tests/rails-3_capybara-1/public +0 -1
  36. data/tests/rails-3_capybara-2/Rakefile +0 -1
  37. data/tests/rails-3_capybara-2/app +0 -1
  38. data/tests/rails-3_capybara-2/config +0 -1
  39. data/tests/rails-3_capybara-2/db +0 -1
  40. data/tests/rails-3_capybara-2/features +0 -1
  41. data/tests/rails-3_capybara-2/public +0 -1
  42. data/tests/rails-4_capybara-3/app +0 -1
  43. data/tests/rails-4_capybara-3/db +0 -1
  44. data/tests/rails-4_capybara-3/features/development_steps.feature +0 -1
  45. data/tests/rails-4_capybara-3/features/email_steps.feature +0 -1
  46. data/tests/rails-4_capybara-3/features/overriding.feature +0 -1
  47. data/tests/rails-4_capybara-3/features/step_definitions/overriding_steps.rb +0 -1
  48. data/tests/rails-4_capybara-3/features/step_definitions/test_steps.rb +0 -1
  49. data/tests/rails-4_capybara-3/features/support/paths.rb +0 -1
  50. data/tests/rails-4_capybara-3/features/support/selectors.rb +0 -1
  51. data/tests/rails-4_capybara-3/features/table_steps.feature +0 -1
  52. data/tests/rails-4_capybara-3/features/web_steps.feature +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f95729608596094ed1ae6bdcff3515b239a078f4
4
- data.tar.gz: 44b7f01fc497d11518cd74e0560c339b5ede46dc
3
+ metadata.gz: e78bf2974c187720465d480aa2c9ddb6e5f04fa4
4
+ data.tar.gz: 644a84b97e8c8743aae338a2f437fba5e07a226f
5
5
  SHA512:
6
- metadata.gz: a5832ec111b646850eaacca4a174690d51c0c52effc5ca9a73545bbbb58861cb255abb429ce744131edfe614b1ab4884819d25025e5c7291e2cf42050926c037
7
- data.tar.gz: '08809ced9f144f3781d8de43148909e6751057d06cb43efc81f335c87ed5c3d0c8b8397e7684394ce66d837fa3361660f7321eb8d9eeb7cec3fb2fbf2b79b485'
6
+ metadata.gz: 1af7461b7ca39df180696cdb931e06485a0cf4366ccab77645c799a9a5264b4fc7b978ef93b27263d512d9b6a7651d944af32b06b9f96d56d1fa6f5ed52a9806
7
+ data.tar.gz: 056a448a1d38fd64e45cdc92ffcc28e0fcb2883fc137012301a5a2333aef66478b217d28a4a11f59546c89670fed58c3e52574a6656f3935435583ec281981b0
data/CHANGELOG.md CHANGED
@@ -3,6 +3,9 @@ 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
+ ## 1.12.6
7
+ The "within" step no longer clashes with the "I should see an element for" and "I click on the element for" steps ([Issue #87](https://github.com/makandra/spreewald/issues/87))
8
+
6
9
  ## 1.12.5
7
10
  The "it should work" step now takes an optional reason.
8
11
 
data/README.md CHANGED
@@ -90,7 +90,7 @@ Spreewald has different kind of tests:
90
90
  - Test applications for integration tests with various Capybara versions live in `tests/`.
91
91
  - Tests for the Spreewald binary live in `features/`
92
92
 
93
- Run all tests for your current ruby version with `rake` or `rake matrix:tests`
93
+ Run all tests for your current ruby version with `rake` or `rake matrix:tests`. To bundle use `rake matrix:install` first.
94
94
 
95
95
  Please note that you need [geordi](https://github.com/makandra/geordi) to run the integration tests.
96
96
 
@@ -507,7 +507,7 @@ When /^I click on the element for (.+?)$/ do |locator|
507
507
  selector = _selector_for(locator)
508
508
  page.find(*selector).click
509
509
  end
510
- end.overridable
510
+ end.overridable(priority: -5) # priority lower than within
511
511
 
512
512
  # Use this step to check external links.
513
513
  #
@@ -554,7 +554,7 @@ Then /^I should (not )?see (?:an|the) element for (.*?)$/ do |negate, locator|
554
554
  patiently do
555
555
  page.send(expectation, have_selector(*selector))
556
556
  end
557
- end.overridable
557
+ end.overridable(:priority => -5) # priority must be lower than the "within" step
558
558
 
559
559
 
560
560
  # Checks that the result has content type `text/plain`
@@ -1,3 +1,3 @@
1
1
  module Spreewald
2
- VERSION = '1.12.5'
2
+ VERSION = '1.12.6'
3
3
  end
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (1.12.5)
4
+ spreewald (1.12.6)
5
5
  cucumber
6
6
  cucumber_priority (>= 0.3.0)
7
7
 
@@ -0,0 +1,2 @@
1
+ default: --require features --require features/shared features/shared
2
+
@@ -0,0 +1,7 @@
1
+ development:
2
+ adapter: sqlite3
3
+ database: ":memory:"
4
+
5
+ test:
6
+ adapter: sqlite3
7
+ database: ":memory:"
@@ -0,0 +1,16 @@
1
+ module NavigationHelpers
2
+
3
+ def path_to(page_name)
4
+ case page_name
5
+ when /^"(.*)"$/
6
+ $1
7
+
8
+ else
9
+ raise "Can't find mapping from \"#{page_name}\" to a path.\n" +
10
+ "Now, go and add a mapping in #{__FILE__}"
11
+ end
12
+ end
13
+
14
+ end
15
+
16
+ World(NavigationHelpers)
@@ -0,0 +1,52 @@
1
+ module HtmlSelectorsHelpers
2
+ # Maps a name to a selector. Used primarily by the
3
+ #
4
+ # When /^(.+) within (.+)$/ do |step, scope|
5
+ #
6
+ # step definitions in web_steps.rb
7
+ #
8
+ def selector_for(locator)
9
+ case locator
10
+
11
+ when /^a panel?$/
12
+ '.panel'
13
+
14
+ when /^a panels nested contents?$/
15
+ '.panel--nested-contents'
16
+
17
+ when /^the timeline?$/
18
+ '.timeline'
19
+
20
+ when /^the table row containing "(.+?)"$/
21
+ all('tr').detect { |tr| tr.text.include? $1 } || raise("Could not find tr containing #{$1.inspect}")
22
+
23
+ when /^a table$/
24
+ '.table'
25
+
26
+ # Add more mappings here.
27
+ # Here is an example that pulls values out of the Regexp:
28
+ #
29
+ # when /^the (notice|error|info) flash$/
30
+ # ".flash.#{$1}"
31
+
32
+ # You can also return an array to use a different selector
33
+ # type, like:
34
+ #
35
+ # when /the header/
36
+ # [:xpath, "//header"]
37
+
38
+ # This allows you to provide a quoted selector as the scope
39
+ # for "within" steps as was previously the default for the
40
+ # web steps:
41
+ when /^"(.+)"$/
42
+ $1
43
+
44
+ else
45
+ raise "Can't find mapping from \"#{locator}\" to a selector.\n" +
46
+ "Now, go and add a mapping in #{__FILE__}"
47
+ end
48
+ end
49
+
50
+ end
51
+
52
+ World(HtmlSelectorsHelpers)
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (1.12.5)
4
+ spreewald (1.12.6)
5
5
  cucumber
6
6
  cucumber_priority (>= 0.3.0)
7
7
 
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env rake
2
+ require 'cucumber/rake/task'
3
+
4
+ desc 'Default: Run all specs for a specific rails version.'
5
+ task :default => :features
6
+
7
+ desc 'Run all specs for rails 3.2'
8
+ Cucumber::Rake::Task.new(:features) do |t|
9
+ feature = if ENV['SINGLE_FEATURE']
10
+ "../../shared/features/shared/#{ ENV['SINGLE_FEATURE'] }"
11
+ else
12
+ 'features/shared'
13
+ end
14
+
15
+ # tell cucumber where it finds it files (subdirectories and symlinks are confusing it)
16
+ t.cucumber_opts = "--require features --require features/shared #{feature}"
17
+ end
18
+
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (1.12.5)
4
+ spreewald (1.12.6)
5
5
  cucumber
6
6
  cucumber_priority (>= 0.3.0)
7
7
 
@@ -0,0 +1,8 @@
1
+ Feature: Development steps
2
+
3
+ Scenario: /^it should work(.+?)?$/ (without a reason)
4
+ Then it should work
5
+
6
+ Scenario: /^it should work(.+?)?$/ (with a given reason)
7
+ Then it should work once the blocker described here was fulfilled. (Feature should be pending)
8
+
@@ -0,0 +1,133 @@
1
+ Feature: Test Spreewald's email steps
2
+
3
+ Scenario: /^no e?mail should have been sent$/
4
+ When I go to "/emails/do_nothing"
5
+ Then the following step should succeed:
6
+ | no email should have been sent |
7
+
8
+ When I go to "/emails/send_email"
9
+ Then the following step should fail:
10
+ | no email should have been sent |
11
+
12
+
13
+ Scenario: /^I should see "([^\"]*)" in the e?mail$/
14
+ When I go to "/emails/send_email"
15
+ Then the following step should succeed:
16
+ | I should see "BODY" in the email |
17
+ But the following step should fail:
18
+ | I should see "XYZ" in the email |
19
+
20
+
21
+ Scenario: /^(an|no) e?mail should have been sent with:$/
22
+ When I go to "/emails/send_email"
23
+
24
+ # Test without body
25
+ Then the following multiline step should succeed:
26
+ """
27
+ Then an email should have been sent with:
28
+ '''
29
+ From: from@example.com
30
+ Reply-To: reply-to@example.com
31
+ To: to@example.com
32
+ Subject: SUBJECT
33
+ '''
34
+ """
35
+
36
+ # Test with body
37
+ Then the following multiline step should succeed:
38
+ """
39
+ Then an email should have been sent with:
40
+ '''
41
+ From: from@example.com
42
+ Reply-To: reply-to@example.com
43
+ To: to@example.com
44
+ Subject: SUBJECT
45
+
46
+ BODY
47
+ '''
48
+ """
49
+
50
+ # Test with incorrect From header
51
+ Then the following multiline step should fail:
52
+ """
53
+ Then an email should have been sent with:
54
+ '''
55
+ From: other-from@example.com
56
+ Reply-To: reply-to@example.com
57
+ To: to@example.com
58
+ Subject: SUBJECT
59
+
60
+ BODY
61
+ '''
62
+ """
63
+
64
+ # Test with incorrect Reply-To header
65
+ Then the following multiline step should fail:
66
+ """
67
+ Then an email should have been sent with:
68
+ '''
69
+ From: from@example.com
70
+ Reply-To: other-reply-to@example.com
71
+ To: to@example.com
72
+ Subject: SUBJECT
73
+
74
+ BODY
75
+ '''
76
+ """
77
+ # Test with incorrect To header
78
+ Then the following multiline step should fail:
79
+ """
80
+ Then an email should have been sent with:
81
+ '''
82
+ From: from@example.com
83
+ Reply-To: reply-to@example.com
84
+ To: other-to@example.com
85
+ Subject: SUBJECT
86
+
87
+ BODY
88
+ '''
89
+ """
90
+
91
+ # Test with incorrect Subject header
92
+ Then the following multiline step should fail:
93
+ """
94
+ Then an email should have been sent with:
95
+ '''
96
+ From: from@example.com
97
+ Reply-To: reply-to@example.com
98
+ To: to@example.com
99
+ Subject: OTHER-SUBJECT
100
+
101
+ BODY
102
+ '''
103
+ """
104
+
105
+ # Test with incorrect body
106
+ Then the following multiline step should fail:
107
+ """
108
+ Then an email should have been sent with:
109
+ '''
110
+ From: from@example.com
111
+ Reply-To: reply-to@example.com
112
+ To: to@example.com
113
+ Subject: SUBJECT
114
+
115
+ OTHER-BODY
116
+ '''
117
+ """
118
+
119
+ # Test body with multiple paragraphs
120
+ Then the following multiline step should fail:
121
+ """
122
+ Then an email should have been sent with:
123
+ '''
124
+ From: from@example.com
125
+ Reply-To: reply-to@example.com
126
+ To: to@example.com
127
+ Subject: SUBJECT
128
+
129
+ BODY
130
+
131
+ MORE-BODY
132
+ '''
133
+ """
@@ -0,0 +1,5 @@
1
+ Feature: Overriding Spreewald-steps
2
+
3
+ Scenario: The developer should be able to override any Spreewald step without Cucumber raising Cucumber::Ambiguous
4
+ When I go to "/static_pages/overridden"
5
+ Then I should see "overridden value"
@@ -0,0 +1,3 @@
1
+ Then /^I should see "overridden value"$/ do
2
+ page.should have_content('overridden value')
3
+ end
@@ -0,0 +1,43 @@
1
+ RSPEC_EXPECTATION_NOT_MET_ERROR = RSpec::Expectations::ExpectationNotMetError
2
+
3
+ Then /^the following steps? should (fail|succeed):$/ do |expectation, steps_table|
4
+ steps = steps_table.raw.flatten
5
+
6
+ steps.each do |step|
7
+ if expectation == 'fail'
8
+ expect { step(step) }.to raise_error(RSPEC_EXPECTATION_NOT_MET_ERROR)
9
+
10
+ else # succeed
11
+ step(step)
12
+ end
13
+
14
+ end
15
+ end
16
+
17
+ When /^I run the following steps?:$/ do |steps_table|
18
+ steps = steps_table.raw.flatten
19
+
20
+ steps.each do |step|
21
+ step(step)
22
+ end
23
+ end
24
+
25
+ Then /^the following multiline step should (fail|succeed):$/ do |expectation, multiline_step|
26
+ multiline_step = multiline_step.gsub(%{'''}, %{"""})
27
+ if expectation == 'fail'
28
+ expect { steps(multiline_step) }.to raise_error(RSPEC_EXPECTATION_NOT_MET_ERROR)
29
+ else # succeed
30
+ steps(multiline_step)
31
+ end
32
+
33
+ end
34
+
35
+ Then(/^a hidden string with quotes should not be visible$/) do
36
+ hidden_string = %Q{hidden '" quotes}
37
+ assert_hidden(:text => hidden_string)
38
+ end
39
+
40
+ Then(/^a visible string with quotes should be visible$/) do
41
+ visible_string = %Q{visible '" quotes}
42
+ assert_visible(:text => visible_string)
43
+ end
@@ -0,0 +1,16 @@
1
+ module NavigationHelpers
2
+
3
+ def path_to(page_name)
4
+ case page_name
5
+ when /^"(.*)"$/
6
+ $1
7
+
8
+ else
9
+ raise "Can't find mapping from \"#{page_name}\" to a path.\n" +
10
+ "Now, go and add a mapping in #{__FILE__}"
11
+ end
12
+ end
13
+
14
+ end
15
+
16
+ World(NavigationHelpers)
@@ -0,0 +1,52 @@
1
+ module HtmlSelectorsHelpers
2
+ # Maps a name to a selector. Used primarily by the
3
+ #
4
+ # When /^(.+) within (.+)$/ do |step, scope|
5
+ #
6
+ # step definitions in web_steps.rb
7
+ #
8
+ def selector_for(locator)
9
+ case locator
10
+
11
+ when /^a panel?$/
12
+ '.panel'
13
+
14
+ when /^a panels nested contents?$/
15
+ '.panel--nested-contents'
16
+
17
+ when /^the timeline?$/
18
+ '.timeline'
19
+
20
+ when /^the table row containing "(.+?)"$/
21
+ all('tr').detect { |tr| tr.text.include? $1 } || raise("Could not find tr containing #{$1.inspect}")
22
+
23
+ when /^a table$/
24
+ '.table'
25
+
26
+ # Add more mappings here.
27
+ # Here is an example that pulls values out of the Regexp:
28
+ #
29
+ # when /^the (notice|error|info) flash$/
30
+ # ".flash.#{$1}"
31
+
32
+ # You can also return an array to use a different selector
33
+ # type, like:
34
+ #
35
+ # when /the header/
36
+ # [:xpath, "//header"]
37
+
38
+ # This allows you to provide a quoted selector as the scope
39
+ # for "within" steps as was previously the default for the
40
+ # web steps:
41
+ when /^"(.+)"$/
42
+ $1
43
+
44
+ else
45
+ raise "Can't find mapping from \"#{locator}\" to a selector.\n" +
46
+ "Now, go and add a mapping in #{__FILE__}"
47
+ end
48
+ end
49
+
50
+ end
51
+
52
+ World(HtmlSelectorsHelpers)
@@ -0,0 +1,293 @@
1
+ Feature: Table steps
2
+
3
+
4
+ Scenario: should see a table with the following rows
5
+ When I go to "/tables/table1"
6
+ Then the following multiline step should succeed:
7
+ """
8
+ Then I should see a table with the following rows:
9
+ | 1-1 | 1-2 | 1-3 |
10
+ | 2-1 | 2-2 | 2-3 |
11
+ | 3-1 | 3-2 | 3-3 |
12
+ """
13
+ And the following multiline step should succeed:
14
+ """
15
+ Then I should see a table with the following rows:
16
+ | 1-1 | 1-3 |
17
+ | 2-1 | 2-3 |
18
+ | 3-1 | 3-3 |
19
+ """
20
+ And the following multiline step should succeed:
21
+ """
22
+ Then I should see a table with the following rows:
23
+ | 1-2 | 1-3 |
24
+ | 2-2 | 2-3 |
25
+ | 3-2 | 3-3 |
26
+ """
27
+ And the following multiline step should succeed:
28
+ """
29
+ Then I should see a table with the following rows:
30
+ | 1-1 | 1-2 | 1-3 |
31
+ | 3-1 | 3-2 | 3-3 |
32
+ """
33
+ And the following multiline step should succeed:
34
+ """
35
+ Then I should see a table with the following rows:
36
+ | 2-1 | 2-2 | 2-3 |
37
+ | 3-1 | 3-2 | 3-3 |
38
+ """
39
+ And the following multiline step should succeed:
40
+ """
41
+ Then I should see a table with the following rows:
42
+ | 1-1 | 1-2 | 1-3 |
43
+ | 2-1 | 2-2 | 2-3 |
44
+ """
45
+ And the following multiline step should succeed:
46
+ """
47
+ Then I should see a table with the following rows:
48
+ | 1-1 | 1-3 |
49
+ | 3-1 | 3-3 |
50
+ """
51
+ And the following multiline step should succeed:
52
+ """
53
+ Then I should see a table with the following rows:
54
+ | 1* | 1-3 |
55
+ | 3* | 3-3 |
56
+ """
57
+ And the following multiline step should fail:
58
+ """
59
+ Then I should see a table with the following rows:
60
+ | 3-1 | 3-2 | 3-3 |
61
+ | 1-1 | 1-2 | 1-3 |
62
+ | 2-1 | 2-2 | 2-3 |
63
+ """
64
+ But the following multiline step should fail:
65
+ """
66
+ Then I should see a table with the following rows:
67
+ | 1-1 | 1-2 | 1-3 |
68
+ | 2-1 | 2-2 | 2-3 |
69
+ | 3-1 | 3-2 | foo |
70
+ """
71
+ And the following multiline step should fail:
72
+ """
73
+ Then I should see a table with the following rows:
74
+ | 1-1 | 1-2 | 1-3 |
75
+ | 2-1 | foo | 2-3 |
76
+ | 3-1 | 3-2 | 3-3 |
77
+ """
78
+ And the following multiline step should fail:
79
+ """
80
+ Then I should see a table with the following rows:
81
+ | 1 | 1-3 |
82
+ | 3 | 3-3 |
83
+ """
84
+
85
+
86
+ Scenario: Cell content normalization
87
+ When I go to "/tables/table_with_weird_spaces"
88
+ Then I should see a table with the following rows:
89
+ | one two | three four |
90
+ | five six | seven eight |
91
+ | nineten | eleventwelve |
92
+
93
+
94
+ Scenario: should not see a table with the following rows
95
+ When I go to "/tables/table1"
96
+ Then the following multiline step should fail:
97
+ """
98
+ Then I should not see a table with the following rows:
99
+ | 1-1 | 1-2 | 1-3 |
100
+ | 2-1 | 2-2 | 2-3 |
101
+ | 3-1 | 3-2 | 3-3 |
102
+ """
103
+ But the following multiline step should succeed:
104
+ """
105
+ Then I should not see a table with the following rows:
106
+ | 3-1 | 3-2 | 3-3 |
107
+ | 1-1 | 1-2 | 1-3 |
108
+ | 2-1 | 2-2 | 2-3 |
109
+ """
110
+
111
+
112
+ Scenario: should see a table with exactly the following rows
113
+ When I go to "/tables/table1"
114
+ Then the following multiline step should succeed:
115
+ """
116
+ Then I should see a table with exactly the following rows:
117
+ | 1-1 | 1-2 | 1-3 |
118
+ | 2-1 | 2-2 | 2-3 |
119
+ | 3-1 | 3-2 | 3-3 |
120
+ """
121
+ And the following multiline step should succeed:
122
+ """
123
+ Then I should see a table with exactly the following rows:
124
+ | 1-1 | 1-3 |
125
+ | 2-1 | 2-3 |
126
+ | 3-1 | 3-3 |
127
+ """
128
+ But the following multiline step should fail:
129
+ """
130
+ Then I should see a table with exactly the following rows:
131
+ | 2-1 | 2-2 | 2-3 |
132
+ | 1-1 | 1-2 | 1-3 |
133
+ | 3-1 | 3-2 | 3-3 |
134
+ """
135
+ And the following multiline step should fail:
136
+ """
137
+ Then I should see a table with exactly the following rows:
138
+ | 1-1 | 1-2 | 1-3 |
139
+ | 3-1 | 3-2 | 3-3 |
140
+ """
141
+
142
+
143
+ Scenario: should not see a table with exactly the following rows
144
+ When I go to "/tables/table1"
145
+ Then the following multiline step should fail:
146
+ """
147
+ Then I should not see a table with exactly the following rows:
148
+ | 1-1 | 1-2 | 1-3 |
149
+ | 2-1 | 2-2 | 2-3 |
150
+ | 3-1 | 3-2 | 3-3 |
151
+ """
152
+ And the following multiline step should fail:
153
+ """
154
+ Then I should not see a table with exactly the following rows:
155
+ | 1-1 | 1-3 |
156
+ | 2-1 | 2-3 |
157
+ | 3-1 | 3-3 |
158
+ """
159
+ But the following multiline step should succeed:
160
+ """
161
+ Then I should not see a table with exactly the following rows:
162
+ | 2-1 | 2-2 | 2-3 |
163
+ | 1-1 | 1-2 | 1-3 |
164
+ | 3-1 | 3-2 | 3-3 |
165
+ """
166
+ And the following multiline step should succeed:
167
+ """
168
+ Then I should not see a table with exactly the following rows:
169
+ | 1-1 | 1-2 | 1-3 |
170
+ | 3-1 | 3-2 | 3-3 |
171
+ """
172
+
173
+
174
+ Scenario: should see a table with the following rows in any order
175
+ When I go to "/tables/table1"
176
+ Then the following multiline step should succeed:
177
+ """
178
+ Then I should see a table with the following rows in any order:
179
+ | 1-1 | 1-2 | 1-3 |
180
+ | 2-1 | 2-2 | 2-3 |
181
+ | 3-1 | 3-2 | 3-3 |
182
+ """
183
+ And the following multiline step should succeed:
184
+ """
185
+ Then I should see a table with the following rows in any order:
186
+ | 1-1 | 1-2 | 1-3 |
187
+ | 3-1 | 3-2 | 3-3 |
188
+ """
189
+ And the following multiline step should succeed:
190
+ """
191
+ Then I should see a table with the following rows in any order:
192
+ | 3-1 | 3-2 | 3-3 |
193
+ | 1-1 | 1-2 | 1-3 |
194
+ | 2-1 | 2-2 | 2-3 |
195
+ """
196
+ But the following multiline step should fail:
197
+ """
198
+ Then I should see a table with the following rows in any order:
199
+ | 1-1 | 1-2 | 1-3 |
200
+ | 2-1 | 2-2 | 2-3 |
201
+ | 3-1 | 3-2 | foo |
202
+ """
203
+ And the following multiline step should fail:
204
+ """
205
+ Then I should see a table with the following rows in any order:
206
+ | 1 | 1-3 |
207
+ | 3 | 3-3 |
208
+ """
209
+
210
+
211
+ Scenario: should not see a table with the following rows in any order
212
+ When I go to "/tables/table1"
213
+ Then the following multiline step should fail:
214
+ """
215
+ Then I should not see a table with the following rows in any order:
216
+ | 1-1 | 1-2 | 1-3 |
217
+ | 2-1 | 2-2 | 2-3 |
218
+ | 3-1 | 3-2 | 3-3 |
219
+ """
220
+ And the following multiline step should fail:
221
+ """
222
+ Then I should not see a table with the following rows in any order:
223
+ | 1-1 | 1-2 | 1-3 |
224
+ | 3-1 | 3-2 | 3-3 |
225
+ """
226
+ And the following multiline step should fail:
227
+ """
228
+ Then I should not see a table with the following rows in any order:
229
+ | 3-1 | 3-2 | 3-3 |
230
+ | 1-1 | 1-2 | 1-3 |
231
+ | 2-1 | 2-2 | 2-3 |
232
+ """
233
+ But the following multiline step should succeed:
234
+ """
235
+ Then I should not see a table with the following rows in any order:
236
+ | 1-1 | 1-2 | 1-3 |
237
+ | 2-1 | 2-2 | 2-3 |
238
+ | 3-1 | 3-2 | foo |
239
+ """
240
+ And the following multiline step should succeed:
241
+ """
242
+ Then I should not see a table with the following rows in any order:
243
+ | 1 | 1-3 |
244
+ | 3 | 3-3 |
245
+ """
246
+
247
+
248
+ Scenario: should see a table with exactly the following rows in any order
249
+ When I go to "/tables/table1"
250
+ Then the following multiline step should succeed:
251
+ """
252
+ Then I should see a table with exactly the following rows in any order:
253
+ | 1-1 | 1-2 | 1-3 |
254
+ | 2-1 | 2-2 | 2-3 |
255
+ | 3-1 | 3-2 | 3-3 |
256
+ """
257
+ And the following multiline step should succeed:
258
+ """
259
+ Then I should see a table with exactly the following rows in any order:
260
+ | 3-1 | 3-2 | 3-3 |
261
+ | 1-1 | 1-2 | 1-3 |
262
+ | 2-1 | 2-2 | 2-3 |
263
+ """
264
+ But the following multiline step should fail:
265
+ """
266
+ Then I should see a table with exactly the following rows in any order:
267
+ | 1-1 | 1-2 | 1-3 |
268
+ | 3-1 | 3-2 | 3-3 |
269
+ """
270
+
271
+
272
+ Scenario: should not see a table with exactly the following rows in any order
273
+ When I go to "/tables/table1"
274
+ Then the following multiline step should fail:
275
+ """
276
+ Then I should not see a table with exactly the following rows in any order:
277
+ | 1-1 | 1-2 | 1-3 |
278
+ | 2-1 | 2-2 | 2-3 |
279
+ | 3-1 | 3-2 | 3-3 |
280
+ """
281
+ And the following multiline step should fail:
282
+ """
283
+ Then I should not see a table with exactly the following rows in any order:
284
+ | 3-1 | 3-2 | 3-3 |
285
+ | 1-1 | 1-2 | 1-3 |
286
+ | 2-1 | 2-2 | 2-3 |
287
+ """
288
+ But the following multiline step should succeed:
289
+ """
290
+ Then I should not see a table with exactly the following rows in any order:
291
+ | 1-1 | 1-2 | 1-3 |
292
+ | 3-1 | 3-2 | 3-3 |
293
+ """
@@ -0,0 +1,184 @@
1
+ Feature: Web steps
2
+
3
+ Scenario: /^the "([^"]*)" field should (not )?contain "([^"]*)"$/
4
+ When I go to "/forms/form1"
5
+ Then the "Text control" field should contain "Text control value"
6
+ Then the "Select control" field should contain "Label 2"
7
+ Then the "Select control without selection" field should contain "Label 1"
8
+ Then the "Textarea control" field should contain "Textarea control value"
9
+ Then the "Empty control" field should contain ""
10
+
11
+
12
+ Scenario: /^the "([^"]*)" field should (not )?contain:/
13
+ When I go to "/forms/form2"
14
+ Then the "Text control" field should contain:
15
+ """
16
+ Text control value
17
+ """
18
+ Then the "Textarea control" field should contain:
19
+ """
20
+ Textarea control line 1
21
+ Textarea control line 2
22
+ """
23
+ Then the "Empty textarea control" field should contain:
24
+ """
25
+ """
26
+
27
+
28
+ Scenario: /^I should see a form with the following values:$/
29
+ When I go to "/forms/form1"
30
+ Then I should see a form with the following values:
31
+ | Text control | Text control value |
32
+ | Select control | Label 2 |
33
+ | Select control without selection | Label 1 |
34
+ | Textarea control | Textarea control value |
35
+ | Empty control | |
36
+
37
+
38
+ Scenario: /^"([^"]*)" should( not)? be selected for "([^"]*)"$/
39
+ When I go to "/forms/form1"
40
+ Then "Label 2" should be selected for "Select control"
41
+ But "Label 1" should not be selected for "Select control"
42
+ And "Label 1" should be selected for "Select control without selection"
43
+
44
+
45
+ Scenario: /^nothing should be selected for "([^"]*)"$/
46
+ When I go to "/forms/form1"
47
+ Then nothing should be selected for "Select control with blank option"
48
+ Then nothing should be selected for "Select control with blank selection"
49
+
50
+
51
+ Scenario: /^I go back$/
52
+ Given I go to "/static_pages/link_to_home"
53
+ And I follow "Home"
54
+
55
+ When I go back
56
+ Then I should be on "/static_pages/link_to_home"
57
+
58
+
59
+ Scenario: /^the "([^"]*)" checkbox should( not)? be checked$/
60
+ When I go to "/forms/checkbox_form"
61
+ Then the "Checked" checkbox should be checked
62
+ And the "Unchecked" checkbox should not be checked
63
+
64
+
65
+ @javascript
66
+ Scenario: /^I click on "([^\"]+)"$/
67
+ When I go to "/static_pages/click_on"
68
+ And I click on "Nested"
69
+ # See that it clicks the innermost element with that text
70
+ Then I should see "You clicked on .inner"
71
+ When I click on "Button"
72
+ Then I should see "You clicked on .button"
73
+
74
+
75
+ @javascript
76
+ Scenario: /^I click on the element "([^\"]+)"$/
77
+ When I go to "/static_pages/click_on"
78
+ And I click on the element ".inner"
79
+ Then I should see "You clicked on .inner"
80
+ When I click on the element ".button"
81
+ Then I should see "You clicked on .button"
82
+
83
+
84
+ @javascript
85
+ Scenario: /^I click on the element for .*?$/
86
+ When I go to "/static_pages/click_on"
87
+ And I click on the element for a panel
88
+ Then I should see "You clicked on .panel"
89
+
90
+ When I click on the element for the timeline
91
+ Then I should see "You clicked on .timeline"
92
+ But I should not see "You clicked on .panel"
93
+
94
+ When I click on the element for a panel within ".clickables"
95
+ Then I should see "You clicked on .panel"
96
+
97
+
98
+ Scenario: /^the "(.*?)" select should( not)? be sorted$/
99
+ When I go to "/forms/select_fields"
100
+ Then the "sorted" select should be sorted
101
+ But the "unsorted" select should not be sorted
102
+
103
+
104
+ Scenario: /^Then (the tag )?"..." should( not)? be visible$/
105
+ When I go to "/static_pages/visibility"
106
+ Then "hidden ümläüt" should not be visible
107
+ And "visible ümläüt" should be visible
108
+ And a hidden string with quotes should not be visible
109
+ And a visible string with quotes should be visible
110
+ And "hidden ümläüt" should be hidden
111
+
112
+
113
+ @javascript
114
+ Scenario: /^Then (the tag )?"..." should( not)? be visible$/ with javascript
115
+ When I go to "/static_pages/visibility"
116
+ Then "hidden ümläüt" should not be visible
117
+ And "visible ümläüt" should be visible
118
+ And a hidden string with quotes should not be visible
119
+ And a visible string with quotes should be visible
120
+ And "hidden ümläüt" should be hidden
121
+
122
+
123
+ Scenario: /^the "([^\"]*)" field should( not)? be visible$/
124
+ When I go to "/static_pages/visibility"
125
+ Then the "Visible field" field should be visible
126
+ But the "Hidden field" field should not be visible
127
+
128
+
129
+ @javascript
130
+ Scenario: /^the "([^\"]*)" field should( not)? be visible$/ with Javascript
131
+ When I go to "/static_pages/visibility"
132
+ Then the "Visible field" field should be visible
133
+ But the "Hidden field" field should not be visible
134
+
135
+
136
+ Scenario: /^I should (not )?see (?:an|the) element "([^"]+)"$/
137
+ When I go to "/static_pages/see_element"
138
+ Then I should see an element ".panel"
139
+ And I should see the element ".panel"
140
+ And I should see the element ".panel--nested-contents" within ".panel"
141
+ And I should see the element ".panel--nested-contents" within a panel
142
+ But I should not see an element ".timeline"
143
+ But I should not see the element ".timeline"
144
+
145
+
146
+ Scenario: /^I should (not )?see (?:an|the) element for (.*?)$/
147
+ When I go to "/static_pages/see_element"
148
+ Then I should see an element for a panel
149
+ And I should see the element for a panel
150
+ And I should see the element for a panels nested contents within ".panel"
151
+ And I should see the element for a panels nested contents within a panel
152
+ And I should not see an element for the timeline
153
+ And I should not see the element for the timeline
154
+
155
+
156
+ Scenario: /^((?:|I )should see "([^"]*)" within (.*[^:])$/
157
+ When I go to "/static_pages/within"
158
+ Then I should see "Role" within ".table"
159
+ And I should see "Permissions" within a table
160
+ But I should not see "Nonsense" within ".table"
161
+ And I should not see "Nonsense" within a table
162
+
163
+
164
+ Scenario: /^(.*) within (.*[^:])$/ with a Capybara::Node::Element
165
+ When I go to "/static_pages/within"
166
+ Then I should see "All" within the table row containing "Admin"
167
+
168
+
169
+ Scenario: the /^(.*) within (.*[^:])$/ step should not be invoked when the word "within" is used in an argument for another step
170
+ When I go to "/static_pages/within"
171
+ Then I should see "He lives within a few miles of Augsburg"
172
+
173
+
174
+ Scenario: /^I perform basic authentication as "([^\"]*)\/([^\"]*)" and go to (.*)$/
175
+ When I go to "/authenticated/page"
176
+ Then I should see "Access denied"
177
+ When I perform basic authentication as "user/password" and go to "/authenticated/page"
178
+ Then I should see "Action reached"
179
+
180
+
181
+ @javascript
182
+ Scenario: /^I perform basic authentication as "([^\"]*)\/([^\"]*)" and go to (.*)$/ with Javascript
183
+ When I perform basic authentication as "user/password" and go to "/authenticated/page"
184
+ Then I should see "Action reached"
@@ -1,2 +1,3 @@
1
1
  .panel
2
- Panel contents
2
+ .panel--nested-contents
3
+ Panel contents
@@ -3,7 +3,7 @@
3
3
 
4
4
  .container2
5
5
 
6
- %table
6
+ %table.table
7
7
  %tr
8
8
  %th Role
9
9
  %th Permissions
@@ -86,8 +86,13 @@ Feature: Web steps
86
86
  When I go to "/static_pages/click_on"
87
87
  And I click on the element for a panel
88
88
  Then I should see "You clicked on .panel"
89
+
89
90
  When I click on the element for the timeline
90
91
  Then I should see "You clicked on .timeline"
92
+ But I should not see "You clicked on .panel"
93
+
94
+ When I click on the element for a panel within ".clickables"
95
+ Then I should see "You clicked on .panel"
91
96
 
92
97
 
93
98
  Scenario: /^the "(.*?)" select should( not)? be sorted$/
@@ -128,22 +133,32 @@ Feature: Web steps
128
133
  But the "Hidden field" field should not be visible
129
134
 
130
135
 
131
- Scenario: /^I should (not )?see (?:|a|an |the )(.*?) element$/
136
+ Scenario: /^I should (not )?see (?:an|the) element "([^"]+)"$/
132
137
  When I go to "/static_pages/see_element"
133
138
  Then I should see an element ".panel"
134
139
  And I should see the element ".panel"
135
- And I should see an element for a panel
136
- And I should see the element for a panel
140
+ And I should see the element ".panel--nested-contents" within ".panel"
141
+ And I should see the element ".panel--nested-contents" within a panel
137
142
  But I should not see an element ".timeline"
138
143
  But I should not see the element ".timeline"
144
+
145
+
146
+ Scenario: /^I should (not )?see (?:an|the) element for (.*?)$/
147
+ When I go to "/static_pages/see_element"
148
+ Then I should see an element for a panel
149
+ And I should see the element for a panel
150
+ And I should see the element for a panels nested contents within ".panel"
151
+ And I should see the element for a panels nested contents within a panel
139
152
  And I should not see an element for the timeline
140
153
  And I should not see the element for the timeline
141
154
 
142
155
 
143
- Scenario: /^(.*) within (.*[^:])$/
156
+ Scenario: /^((?:|I )should see "([^"]*)" within (.*[^:])$/
144
157
  When I go to "/static_pages/within"
145
- Then I should see an element ".child1" within ".container1"
146
- But I should not see an element ".child1" within ".container2"
158
+ Then I should see "Role" within ".table"
159
+ And I should see "Permissions" within a table
160
+ But I should not see "Nonsense" within ".table"
161
+ And I should not see "Nonsense" within a table
147
162
 
148
163
 
149
164
  Scenario: /^(.*) within (.*[^:])$/ with a Capybara::Node::Element
@@ -11,12 +11,18 @@ module HtmlSelectorsHelpers
11
11
  when /^a panel?$/
12
12
  '.panel'
13
13
 
14
+ when /^a panels nested contents?$/
15
+ '.panel--nested-contents'
16
+
14
17
  when /^the timeline?$/
15
18
  '.timeline'
16
19
 
17
20
  when /^the table row containing "(.+?)"$/
18
21
  all('tr').detect { |tr| tr.text.include? $1 } || raise("Could not find tr containing #{$1.inspect}")
19
22
 
23
+ when /^a table$/
24
+ '.table'
25
+
20
26
  # Add more mappings here.
21
27
  # Here is an example that pulls values out of the Regexp:
22
28
  #
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: 1.12.5
4
+ version: 1.12.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tobias Kraze
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-03 00:00:00.000000000 Z
11
+ date: 2019-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber
@@ -181,7 +181,6 @@ files:
181
181
  - tests/rails-3_capybara-1/Gemfile
182
182
  - tests/rails-3_capybara-1/Gemfile.lock
183
183
  - tests/rails-3_capybara-1/Rakefile
184
- - tests/rails-3_capybara-1/app
185
184
  - tests/rails-3_capybara-1/config/application.rb
186
185
  - tests/rails-3_capybara-1/config/boot.rb
187
186
  - tests/rails-3_capybara-1/config/cucumber.yml
@@ -193,23 +192,15 @@ files:
193
192
  - tests/rails-3_capybara-1/config/initializers/secret_token.rb
194
193
  - tests/rails-3_capybara-1/config/initializers/session_store.rb
195
194
  - tests/rails-3_capybara-1/config/routes.rb
196
- - tests/rails-3_capybara-1/db
197
- - tests/rails-3_capybara-1/features/shared
198
195
  - tests/rails-3_capybara-1/features/support/env.rb
199
196
  - tests/rails-3_capybara-1/features/support/paths.rb
200
197
  - tests/rails-3_capybara-1/features/support/selectors.rb
201
198
  - tests/rails-3_capybara-1/features/support/selenium.rb
202
- - tests/rails-3_capybara-1/public
203
199
  - tests/rails-3_capybara-2/.ruby-version
204
200
  - tests/rails-3_capybara-2/Gemfile
205
201
  - tests/rails-3_capybara-2/Gemfile.lock
206
202
  - tests/rails-3_capybara-2/Rakefile
207
- - tests/rails-3_capybara-2/app
208
- - tests/rails-3_capybara-2/config
209
203
  - tests/rails-3_capybara-2/config.ru
210
- - tests/rails-3_capybara-2/db
211
- - tests/rails-3_capybara-2/features
212
- - tests/rails-3_capybara-2/public
213
204
  - tests/rails-3_capybara-2/script/cucumber
214
205
  - tests/rails-3_capybara-2/script/rails
215
206
  - tests/rails-4_capybara-3/.gitignore
@@ -217,7 +208,6 @@ files:
217
208
  - tests/rails-4_capybara-3/Gemfile.lock
218
209
  - tests/rails-4_capybara-3/README.rdoc
219
210
  - tests/rails-4_capybara-3/Rakefile
220
- - tests/rails-4_capybara-3/app
221
211
  - tests/rails-4_capybara-3/bin/bundle
222
212
  - tests/rails-4_capybara-3/bin/rails
223
213
  - tests/rails-4_capybara-3/bin/rake
@@ -242,7 +232,6 @@ files:
242
232
  - tests/rails-4_capybara-3/config/locales/en.yml
243
233
  - tests/rails-4_capybara-3/config/routes.rb
244
234
  - tests/rails-4_capybara-3/config/secrets.yml
245
- - tests/rails-4_capybara-3/db
246
235
  - tests/rails-4_capybara-3/features/development_steps.feature
247
236
  - tests/rails-4_capybara-3/features/email_steps.feature
248
237
  - tests/rails-4_capybara-3/features/overriding.feature
@@ -318,7 +307,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
318
307
  version: '0'
319
308
  requirements: []
320
309
  rubyforge_project:
321
- rubygems_version: 2.6.14.3
310
+ rubygems_version: 2.2.5
322
311
  signing_key:
323
312
  specification_version: 4
324
313
  summary: Collection of useful cucumber steps.
@@ -327,7 +316,6 @@ test_files:
327
316
  - tests/rails-3_capybara-1/Gemfile
328
317
  - tests/rails-3_capybara-1/Gemfile.lock
329
318
  - tests/rails-3_capybara-1/Rakefile
330
- - tests/rails-3_capybara-1/app
331
319
  - tests/rails-3_capybara-1/config/application.rb
332
320
  - tests/rails-3_capybara-1/config/boot.rb
333
321
  - tests/rails-3_capybara-1/config/cucumber.yml
@@ -339,23 +327,15 @@ test_files:
339
327
  - tests/rails-3_capybara-1/config/initializers/secret_token.rb
340
328
  - tests/rails-3_capybara-1/config/initializers/session_store.rb
341
329
  - tests/rails-3_capybara-1/config/routes.rb
342
- - tests/rails-3_capybara-1/db
343
- - tests/rails-3_capybara-1/features/shared
344
330
  - tests/rails-3_capybara-1/features/support/env.rb
345
331
  - tests/rails-3_capybara-1/features/support/paths.rb
346
332
  - tests/rails-3_capybara-1/features/support/selectors.rb
347
333
  - tests/rails-3_capybara-1/features/support/selenium.rb
348
- - tests/rails-3_capybara-1/public
349
334
  - tests/rails-3_capybara-2/.ruby-version
350
335
  - tests/rails-3_capybara-2/Gemfile
351
336
  - tests/rails-3_capybara-2/Gemfile.lock
352
337
  - tests/rails-3_capybara-2/Rakefile
353
- - tests/rails-3_capybara-2/app
354
- - tests/rails-3_capybara-2/config
355
338
  - tests/rails-3_capybara-2/config.ru
356
- - tests/rails-3_capybara-2/db
357
- - tests/rails-3_capybara-2/features
358
- - tests/rails-3_capybara-2/public
359
339
  - tests/rails-3_capybara-2/script/cucumber
360
340
  - tests/rails-3_capybara-2/script/rails
361
341
  - tests/rails-4_capybara-3/.gitignore
@@ -363,7 +343,6 @@ test_files:
363
343
  - tests/rails-4_capybara-3/Gemfile.lock
364
344
  - tests/rails-4_capybara-3/README.rdoc
365
345
  - tests/rails-4_capybara-3/Rakefile
366
- - tests/rails-4_capybara-3/app
367
346
  - tests/rails-4_capybara-3/bin/bundle
368
347
  - tests/rails-4_capybara-3/bin/rails
369
348
  - tests/rails-4_capybara-3/bin/rake
@@ -388,7 +367,6 @@ test_files:
388
367
  - tests/rails-4_capybara-3/config/locales/en.yml
389
368
  - tests/rails-4_capybara-3/config/routes.rb
390
369
  - tests/rails-4_capybara-3/config/secrets.yml
391
- - tests/rails-4_capybara-3/db
392
370
  - tests/rails-4_capybara-3/features/development_steps.feature
393
371
  - tests/rails-4_capybara-3/features/email_steps.feature
394
372
  - tests/rails-4_capybara-3/features/overriding.feature
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/../shared/app
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/config/../../shared/config/cucumber.yml
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/config/../../shared/config/database.yml
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/../shared/db
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/features/../../shared/features/shared
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/features/support/../../../shared/features/support/paths.rb
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/features/support/../../../shared/features/support/selectors.rb
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-1/../shared/public
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-2/../rails-3_capybara-1/Rakefile
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-2/../rails-3_capybara-1/app
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-2/../rails-3_capybara-1/config
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-2/../rails-3_capybara-1/db
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-2/../rails-3_capybara-1/features/
@@ -1 +0,0 @@
1
- tests/rails-3_capybara-2/../rails-3_capybara-1/public
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/../shared/app/
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/../shared/db/
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/../../shared/features/shared/development_steps.feature
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/../../shared/features/shared/email_steps.feature
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/../../shared/features/shared/overriding.feature
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/step_definitions/../../../shared/features/shared/step_definitions/
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/step_definitions/../../../shared/features/shared/step_definitions/
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/support/../../../shared/features/support/paths.rb
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/support/../../../shared/features/support/selectors.rb
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/../../shared/features/shared/table_steps.feature
@@ -1 +0,0 @@
1
- tests/rails-4_capybara-3/features/../../shared/features/shared/web_steps.feature