cucumber-rails 1.4.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +7 -0
  2. data/.github/ISSUE_TEMPLATE.md +52 -0
  3. data/.github/PULL_REQUEST_TEMPLATE.md +42 -0
  4. data/.gitignore +3 -0
  5. data/.rspec +4 -1
  6. data/.rubocop.yml +68 -0
  7. data/.travis.yml +53 -26
  8. data/Appraisals +27 -63
  9. data/{History.md → CHANGELOG.md} +299 -19
  10. data/CONTRIBUTING.md +18 -27
  11. data/Gemfile +2 -4
  12. data/LICENSE +1 -1
  13. data/README.md +73 -29
  14. data/Rakefile +18 -14
  15. data/bin/install_geckodriver.sh +19 -0
  16. data/bin/install_webpacker.sh +9 -0
  17. data/config/cucumber.yml +5 -3
  18. data/cucumber-rails.gemspec +37 -25
  19. data/dev_tasks/cucumber.rake +3 -3
  20. data/dev_tasks/rspec.rake +3 -6
  21. data/dev_tasks/yard/default/layout/html/footer.erb +1 -1
  22. data/dev_tasks/yard/default/layout/html/layout.erb +5 -5
  23. data/dev_tasks/yard/default/layout/html/logo.erb +1 -1
  24. data/dev_tasks/yard/default/layout/html/setup.rb +6 -1
  25. data/dev_tasks/yard.rake +7 -14
  26. data/features/allow_rescue.feature +17 -12
  27. data/features/annotations.feature +20 -0
  28. data/features/capybara_javascript_drivers.feature +42 -32
  29. data/features/choose_javascript_database_strategy.feature +38 -57
  30. data/features/configuration.feature +48 -0
  31. data/features/database_cleaner.feature +20 -20
  32. data/features/disable_automatic_database_cleaning.feature +13 -19
  33. data/features/emulate_javascript.feature +65 -48
  34. data/features/install_cucumber_rails.feature +6 -5
  35. data/features/no_database.feature +8 -15
  36. data/features/raising_errors.feature +10 -4
  37. data/features/rerun_profile.feature +18 -8
  38. data/features/rest_api.feature +13 -13
  39. data/features/step_definitions/cucumber_rails_steps.rb +52 -66
  40. data/features/support/aruba.rb +5 -0
  41. data/features/support/cucumber_rails_helper.rb +85 -0
  42. data/features/support/env.rb +4 -35
  43. data/features/support/hooks.rb +8 -0
  44. data/gemfiles/rails_4_2.gemfile +10 -0
  45. data/gemfiles/rails_5_0.gemfile +10 -0
  46. data/gemfiles/rails_5_1.gemfile +10 -0
  47. data/gemfiles/rails_5_2.gemfile +10 -0
  48. data/gemfiles/rails_6_0.gemfile +9 -0
  49. data/lib/cucumber/rails/action_dispatch.rb +21 -0
  50. data/lib/cucumber/rails/application.rb +17 -8
  51. data/lib/cucumber/rails/capybara/javascript_emulation.rb +47 -39
  52. data/lib/cucumber/rails/capybara/select_dates_and_times.rb +8 -6
  53. data/lib/cucumber/rails/capybara.rb +2 -0
  54. data/lib/cucumber/rails/database.rb +36 -17
  55. data/lib/cucumber/rails/hooks/active_record.rb +14 -12
  56. data/lib/cucumber/rails/hooks/allow_rescue.rb +2 -0
  57. data/lib/cucumber/rails/hooks/database_cleaner.rb +6 -4
  58. data/lib/cucumber/rails/hooks/mail.rb +4 -4
  59. data/lib/cucumber/rails/hooks.rb +2 -0
  60. data/lib/cucumber/rails/rspec.rb +5 -3
  61. data/lib/cucumber/rails/world.rb +26 -9
  62. data/lib/cucumber/rails.rb +21 -18
  63. data/lib/generators/cucumber/{install/USAGE → USAGE} +2 -2
  64. data/lib/generators/cucumber/{install/install_generator.rb → install_generator.rb} +28 -15
  65. data/lib/generators/cucumber/{install/templates → templates}/config/cucumber.yml.erb +4 -3
  66. data/lib/generators/cucumber/{install/templates → templates}/script/cucumber +1 -0
  67. data/lib/generators/cucumber/{install/templates → templates}/support/_rails_each_run.rb.erb +4 -4
  68. data/lib/generators/cucumber/{install/templates → templates}/support/_rails_prefork.rb.erb +0 -0
  69. data/lib/generators/cucumber/{install/templates → templates}/support/capybara.rb +2 -0
  70. data/lib/generators/cucumber/{install/templates → templates}/support/edit_warning.txt +0 -0
  71. data/lib/generators/cucumber/{install/templates → templates}/support/rails.rb.erb +0 -0
  72. data/lib/generators/cucumber/{install/templates → templates}/support/rails_spork.rb.erb +2 -2
  73. data/lib/generators/cucumber/{install/templates → templates}/tasks/cucumber.rake.erb +19 -8
  74. data/spec/cucumber/rails/database_spec.rb +46 -33
  75. data/spec/generators/cucumber/install_generator_spec.rb +55 -0
  76. data/spec/spec_helper.rb +14 -2
  77. metadata +228 -142
  78. data/Gemfile.appraisal +0 -3
  79. data/features/step_definitions/mongo_steps.rb +0 -3
  80. data/features/support/bundler_pre_support.rb +0 -28
  81. data/features/support/fixtures/bundler-1.0.21.gem +0 -0
  82. data/features/support/fixtures/bundler-1.1.rc.gem +0 -0
  83. data/features/support/legacy_web_steps_support.rb +0 -290
  84. data/gemfiles/capybara_1_1.gemfile +0 -17
  85. data/gemfiles/rails_3_0.gemfile +0 -16
  86. data/gemfiles/rails_3_1.gemfile +0 -17
  87. data/gemfiles/rails_3_2.gemfile +0 -17
  88. data/gemfiles/rails_4_0.gemfile +0 -20
  89. data/lib/cucumber/rails/action_controller.rb +0 -12
  90. data/spec/generators/cucumber/install/install_generator_spec.rb +0 -47
@@ -1,12 +1,253 @@
1
+ Please see [CONTRIBUTING.md](https://github.com/cucumber/cucumber/blob/master/CONTRIBUTING.md)
2
+ on how to contribute to Cucumber.
3
+
4
+ ## [master](https://github.com/cucumber/cucumber-rails/compare/v2.1.0...master) (Not yet released)
5
+
6
+ ### New Features
7
+
8
+ *
9
+
10
+ ### Changed
11
+
12
+ *
13
+
14
+ ### Fixed
15
+
16
+ *
17
+
18
+ ## [v2.1.0](https://github.com/cucumber/cucumber-rails/compare/v2.0.0...v2.1.0) (2020-06-15)
19
+
20
+ ### New Features
21
+
22
+ * Added metadata to allow gem to be searched / indexed by rubygems
23
+ ([#447](https://github.com/cucumber/cucumber-rails/pull/447) [orien])
24
+
25
+ * Allow Cucumber 4 to be used as an option for cucumber-rails
26
+ * NB: Cucumber4 changes quite a lot of logic with auto-loaders. This means that any previous
27
+ logic that relied implicitly on load-order "may" be affected
28
+ ([#453](https://github.com/cucumber/cucumber-rails/pull/453) [luke-hill] / [deivid-rodriguez])
29
+
30
+ ### Changed
31
+
32
+ * Dropped Ruby 2.3 support (target 2.4 - 2.7) ([#466](https://github.com/cucumber/cucumber-rails/pull/466) [mvz])
33
+
34
+ * Refactored suite to remove a lot of old Rails3/4.0 "ism's"
35
+ * Also migrated a lot of old cucumber styles to cucumber4
36
+ ([#441](https://github.com/cucumber/cucumber-rails/pull/441) [luke-hill])
37
+
38
+ * Refactored alias logic for overriding Rails methods to use `Module#prepend`
39
+ ([#457](https://github.com/cucumber/cucumber-rails/pull/457) [wagenet])
40
+
41
+ * `database_cleaner` (when used), at a version `>= 1.8` will now silence all warnings
42
+ * The suite internally will only test a version `>= 1.8`, so other versions will work but are un-maintained
43
+ ([#463](https://github.com/cucumber/cucumber-rails/pull/463) [deivid-rodriguez])
44
+
45
+ ### Fixed
46
+
47
+ * Various rubocop / rspec styling fixes
48
+ ([#445](https://github.com/cucumber/cucumber-rails/pull/445) /
49
+ [#449](https://github.com/cucumber/cucumber-rails/pull/449) /
50
+ [#450](https://github.com/cucumber/cucumber-rails/pull/450) /
51
+ [#451](https://github.com/cucumber/cucumber-rails/pull/451) /
52
+ [#452](https://github.com/cucumber/cucumber-rails/pull/452) /
53
+ [#465](https://github.com/cucumber/cucumber-rails/pull/465)
54
+ [mvz] / [luke-hill])
55
+
56
+ * Various CI fixes
57
+ ([#444](https://github.com/cucumber/cucumber-rails/pull/444) /
58
+ [#460](https://github.com/cucumber/cucumber-rails/pull/460) /
59
+ [#464](https://github.com/cucumber/cucumber-rails/pull/464)
60
+ [mvz] / [damonjmurray] / [deivid-rodriguez])
61
+
62
+ * Avoid printing a warning about `config.cache_classes` being set to `false` when
63
+ Spring is used ([#462](https://github.com/cucumber/cucumber-rails/pull/462) [janko])
64
+
65
+ ## [v2.0.0](https://github.com/cucumber/cucumber-rails/compare/v1.8.0...v2.0.0) (2019-09-13)
66
+
67
+ ### New Features
68
+
69
+ * New functionality allows users to Configure whether `Rack::Test` methods get auto-mixed in
70
+ * Setting `ENV['CR_REMOVE_RACK_TEST_HELPERS] = "true"` will remove these methods from the `World`
71
+ ([#440](https://github.com/cucumber/cucumber-rails/pull/440) [luke-hill])
72
+
73
+ ### Changed
74
+
75
+ * **Breaking change:** `web_steps` have been completely removed from cucumber-rails
76
+ ([#437](https://github.com/cucumber/cucumber-rails/pull/437) [luke-hill])
77
+
78
+ * Altered some branching logic in tests designed to cater for old ruby/rails versions
79
+ ([#433](https://github.com/cucumber/cucumber-rails/pull/433) [luke-hill])
80
+
81
+ ## [v1.8.0](https://github.com/cucumber/cucumber-rails/compare/v1.7.0..v1.8.0) (2019-08-06)
82
+
83
+ ### Changed
84
+
85
+ * Dropped Ruby 2.2 support (target 2.3 and up) ([#424](https://github.com/cucumber/cucumber-rails/pull/424) [mvz])
86
+
87
+ * Begin to update the core runtime / development dependencies to something a little more recent
88
+ ([#413](https://github.com/cucumber/cucumber-rails/pull/413) /
89
+ [#431](https://github.com/cucumber/cucumber-rails/pull/431) /
90
+ [#432](https://github.com/cucumber/cucumber-rails/pull/432)
91
+ [mvz] /
92
+ [luke-hill])
93
+
94
+ ### Fixed
95
+
96
+ * Various rubocop / styling issues that had built up over time
97
+ ([#414](https://github.com/cucumber/cucumber-rails/pull/414) /
98
+ [#416](https://github.com/cucumber/cucumber-rails/pull/416) /
99
+ [#419](https://github.com/cucumber/cucumber-rails/pull/419) /
100
+ [#420](https://github.com/cucumber/cucumber-rails/pull/420) /
101
+ [#421](https://github.com/cucumber/cucumber-rails/pull/421) /
102
+ [#421](https://github.com/cucumber/cucumber-rails/pull/434)
103
+ [luke-hill] /
104
+ [mvz])
105
+
106
+ * Generic Travis Healthcheck (Fixed up polluted logs and use newer Ubuntu OS)
107
+ ([#415](https://github.com/cucumber/cucumber-rails/pull/415) /
108
+ [#417](https://github.com/cucumber/cucumber-rails/pull/417)
109
+ [luke-hill])
110
+
111
+ * Rails6 not building correctly
112
+ ([#418](https://github.com/cucumber/cucumber-rails/pull/418)
113
+ [luke-hill])
114
+
115
+ * Provisional Ruby 2.7 builds not working
116
+ ([#427](https://github.com/cucumber/cucumber-rails/pull/427)
117
+ [amatsuda] /
118
+ [luke-hill])
119
+
120
+ ## [v1.7.0](https://github.com/cucumber/cucumber-rails/compare/v1.6.0...v1.7.0) (2019-04-17)
121
+
122
+ ### Changed
123
+
124
+ * Drop rails `4.0` / `4.1` support ([#392](https://github.com/cucumber/cucumber-rails/pull/392) [deivid-rodriguez])
125
+ * Allow Ruby `2.6` users to `ERB.new` ([#399](https://github.com/cucumber/cucumber-rails/pull/399) [koic])
126
+ * Allow Rails to be used in the `6.x` series (Currently as of release only beta1 is supported) ([#405](https://github.com/cucumber/cucumber-rails/pull/405) [kotovalexarian])
127
+ * Update CI to test most relevant Rubies ([#411](https://github.com/cucumber/cucumber-rails/pull/411) [olleolleolle])
128
+
129
+ ### Fixed
130
+
131
+ * Appraisals fixes (Up-to-date `geckodriver`, standardised the various `.gemfile`s)
132
+ ([#389](https://github.com/cucumber/cucumber-rails/pull/389) /
133
+ [#394](https://github.com/cucumber/cucumber-rails/pull/394) /
134
+ [#395](https://github.com/cucumber/cucumber-rails/pull/395) /
135
+ [#408](https://github.com/cucumber/cucumber-rails/pull/408)
136
+ [xtrasimplicity] /
137
+ [deivid-rodriguez] /
138
+ [mvz])
139
+
140
+ * Various build issues that had built up over the previous year
141
+ ([#403](https://github.com/cucumber/cucumber-rails/pull/403) /
142
+ [#404](https://github.com/cucumber/cucumber-rails/pull/404) /
143
+ [#410](https://github.com/cucumber/cucumber-rails/pull/410)
144
+ [koic] /
145
+ [mvz])
146
+
147
+ ## [v1.6.0](https://github.com/cucumber/cucumber-rails/compare/v1.5.0...v1.6.0) (2018-04-23)
148
+
149
+ ### Changed
150
+
151
+ * Renamed History.md to CHANGELOG.md, added contributing note, and this line in accordance with [cucumber/cucumber #251](https://github.com/cucumber/cucumber/issues/251) ([#345](https://github.com/cucumber/cucumber-rails/pull/345) [jaysonesmith](https://github.com/jaysonesmith))
152
+ * Update .travis.yml with ruby versions ([#341](https://github.com/cucumber/cucumber-rails/pull/341) Jun Aruga)
153
+ * Removed support for Ruby <= 2.1, to keep in line with [cucumber-ruby](https://github.com/cucumber/cucumber-ruby/blob/master/CHANGELOG.md#302-2017-11-11) ([#360](https://github.com/cucumber/cucumber-rails/pull/360) [xtrasimplicity](https://github.com/xtrasimplicity)).
154
+ * Updated syntax to support both new and deprecated forms of tag negation. ([#348](https://github.com/cucumber/cucumber-rails/pull/348) [mirelon](https://github.com/mirelon), [#359](https://github.com/cucumber/cucumber-rails/pull/359) [xtrasimplicity](https://github.com/xtrasimplicity))
155
+ * Dependencies: Allowed `Ammeter` versions greater than 1.1.3. ([#368](https://github.com/cucumber/cucumber-rails/pull/368) [mvz](https://github.com/mvz))
156
+ * Switched to Ruby 1.9 hash syntax. ([#371](https://github.com/cucumber/cucumber-rails/pull/371) [mvz](https://github.com/mvz))
157
+ * Added support to handle rerun files with multiple lines. ([#373]((https://github.com/cucumber/cucumber-rails/pull/345)) [mvz](https://github.com/mvz))
158
+ * Added support for Rails 5.2 and Capybara 3. ([#378](https://github.com/cucumber/cucumber-rails/pull/378/) [gobijan](https://github.com/gobijan), [radar](https://github.com/radar), [xtrasimplicity](https://github.com/xtrasimplicity))
159
+
160
+ ### Fixed
161
+
162
+ * Fix typo ([#343](https://github.com/cucumber/cucumber-rails/pull/343) Olle Jonsson)
163
+ * History.md: Fixed markdown formatting ([#344](https://github.com/cucumber/cucumber-rails/pull/344) [Kosmas](https://github.com/Kosmas))
164
+ * Fixed tag deprecation warnings. ([#373](https://github.com/cucumber/cucumber-rails/pull/373) [mvz](https://github.com/mvz))
165
+
166
+ ## [v1.5.0](https://github.com/cucumber/cucumber-rails/compare/1.4.5...1.5.0) (2017-05-12)
167
+
168
+ * Drop rails 3 support ([#334](https://github.com/cucumber/cucumber-rails/pull/334) Matijs van Zuijlen)
169
+ * Add rails 5.1 support ([#337](https://github.com/cucumber/cucumber-rails/pull/337) Matijs van Zuijlen - Rafael Reggiani Manzo)
170
+
171
+ ## [v1.4.5](https://github.com/cucumber/cucumber-rails/compare/1.4.4...1.4.5) (2016-09-27)
172
+
173
+ * Add support for Cucumber 3+ (Steve Tooke)
174
+
175
+ ## [v1.4.4](https://github.com/cucumber/cucumber-rails/compare/1.4.3...1.4.4) (2016-08-05)
176
+
177
+ * Ensure support for Rails 5
178
+
179
+ ## [v1.4.3](https://github.com/cucumber/cucumber-rails/compare/1.4.2...1.4.3) (2016-01-21)
180
+
181
+ * Added gem version badge (Kosmas Chatzimichalis)
182
+ * Fix a failing test due to rails date selectors only showing 5 years into the past by default ([#293](https://github.com/cucumber/cucumber-rails/pull/293) Thomas Walpole)
183
+ * Allow cucumber 2 ([#293](https://github.com/cucumber/cucumber-rails/pull/293) Thomas Walpole)
184
+ * Add rails 4.2 to test matrix ([#293](https://github.com/cucumber/cucumber-rails/pull/293) Thomas Walpole)
185
+ * Depend on railties instead of rails ([#294](https://github.com/cucumber/cucumber-rails/pull/294) Alexander Lang)
186
+ * Fix failing Travis CI tests ([#305](https://github.com/cucumber/cucumber-rails/pull/305) Matijs van Zuijlen)
187
+ * Allow any cucumber < 3 ([#306](https://github.com/cucumber/cucumber-rails/pull/306) Matijs van Zuijlen)
188
+ * Add annotations configuration in generator ([#292](https://github.com/cucumber/cucumber-rails/pull/292) Bob Showalter)
189
+ * Expand support to include mime-types 3 ([#304](https://github.com/cucumber/cucumber-rails/pull/304) Austin Ziegler)
190
+ * Replace badges with SVG versions ([#307](https://github.com/cucumber/cucumber-rails/pull/307) Kevin Goslar)
191
+ * Add new line to end of generated database.yml ([#302](https://github.com/cucumber/cucumber-rails/pull/302) Kevin Carmody)
192
+
193
+ ## [v1.4.2](https://github.com/cucumber/cucumber-rails/compare/1.4.1...v1.4.2) (2014-10-09)
194
+
195
+ * Updated appraisal dependencies to rspec-rails 3.1.0, gemspec dependency to rspec <= 3.1, and removed turn from rails_4_1 appraisal (Kosmas Chatzimichalis)
196
+ * Update mime-types dependency to >= 1.16, < 3 ([#289](https://github.com/cucumber/cucumber-rails/pull/289) Erik Michaels-Ober)
197
+ * Upgrade to RSpec 3 ([#290](https://github.com/cucumber/cucumber-rails/pull/290) Tamir Duberstein)
198
+
199
+ ## [v1.4.1](https://github.com/cucumber/cucumber-rails/compare/v1.4.0...v1.4.1) (2014-05-10)
200
+
201
+ ### New Features
202
+
203
+ * Added MIT licence in gemspec ([#261](https://github.com/cucumber/cucumber-rails/issues/261#issuecomment-23260956) Benjamin Fleischer)
204
+ * Ensure dependency on DatabaseCleaner is not required ([#276](https://github.com/cucumber/cucumber-rails/pull/276) Matthew O'Riordan)
205
+ * Added Rails 4.1 support ([#287](https://github.com/cucumber/cucumber-rails/pull/287) Felix Bünemann)
206
+ * Modified appraisal instructions in README.md (Kosmas Chatzimichalis)
207
+ * Added Gemnasium support (Kosmas Chatzimichalis)
208
+ * Various code enhancements based on PullReview suggestions (Kosmas Chatzimichalis)
209
+
210
+ ### Removed Features
211
+
212
+ * Mongo step definition ([#263](https://github.com/cucumber/cucumber-rails/issues/263) Aslak Hellesøy)
213
+
214
+ ### Bugfixes
215
+
216
+ * Prevent MiniTest running `at_exit` when running cucumber ([#253](https://github.com/cucumber/cucumber-rails/issues/253) Steve Tooke)
217
+ * `bundle exec rake` runs minitest with cucumber options and raises exception ([#252](https://github.com/cucumber/cucumber-rails/issues/252) Peter Bollenbeck)
218
+ * Various bundler related fixes ([#264](https://github.com/cucumber/cucumber-rails/pull/264) Erik Michaels-Ober)
219
+ * Additional gemspec cleanup ([#265](https://github.com/cucumber/cucumber-rails/pull/265) Erik Michaels-Ober)
220
+ * Added mime-types runtime dependency to fix bundle install issue ([#273](https://github.com/cucumber/cucumber-rails/pull/273) Kosmas Chatzimichalis)
221
+ * Removed mongoid gem from Appraisal ([#274](https://github.com/cucumber/cucumber-rails/pull/274) Kosmas Chatzimichalis)
222
+ * Amend typo in select_dates_and_times.rb comments ([#268](https://github.com/cucumber/cucumber-rails/pull/268) Erik Eide)
223
+ * Keep empty step_definitions directories ([#249](https://github.com/cucumber/cucumber-rails/pull/249) Iain D Broadfoot)
224
+ * Remove obsolete link for config.cache_classes to false ([#271](https://github.com/cucumber/cucumber-rails/issues/271) Andrew Premdas)
225
+
1
226
  ## [v1.4.0](https://github.com/cucumber/cucumber-rails/compare/v1.3.1...v1.4.0) (2013-08-23)
2
227
 
3
228
  ### New Features
4
229
 
5
- * Rails 4 compatibility
6
- * Removal of unused tests (routing, multiple_databases, pre_bundler and mongo)
7
230
  * New test raising_errors.feature to test raising routing errors that replaced the earlier routing.feature
8
231
  * Added recommendation in README.md for running install scripts after upgrading (Joost Baaij)
232
+ * Describe configuration option 'autorun_database_cleaner' in README ([#255](https://github.com/cucumber/cucumber-rails/pull/255) Martin Eismann)
233
+
234
+ ### Changed Features
235
+
236
+ * Gemspec in 1.3.1 doesn't allow usage with rails 4 ([#244](https://github.com/cucumber/cucumber-rails/issues/244) Fabian Schwahn)
237
+
238
+ ### Removed Features
239
+
240
+ * routing.feature code was actually testing the raising of errors so it was renamed to raising_errors.feature and slightly changed to deal with rails 4 changes in public folder
241
+ * multiple_databases.feature was removed as it was actually testing DatabaseCleaner behaviour
242
+ * pre_bundler.feature was removed as it is no longer relevant
243
+ * mongodb feature was removed as is there is no mongodb code in cucumber-rails codebase
9
244
 
245
+ ### Bugfixes
246
+
247
+ * Fixed tests so they pass in Rails 4 and updated gemspec ([#247](https://github.com/cucumber/cucumber-rails/pull/247) Dave Brace)
248
+ * Allow use with Rails 4 ([#254](https://github.com/cucumber/cucumber-rails/pull/254) Marnen Laibow-Koser)
249
+ * (dumb) Fix for Rails4 ([#256](https://github.com/cucumber/cucumber-rails/pull/256) Jon Rowe)
250
+ * Revert "Merge pull request #256 from JonRowe/dumb_fix_for_rails4_test_he... ([#258](https://github.com/cucumber/cucumber-rails/pull/258) Kosmas Chatzimichalis)
10
251
 
11
252
  ## [v1.3.1](https://github.com/cucumber/cucumber-rails/compare/v1.3.0...v1.3.1) (2013-03-15)
12
253
 
@@ -41,9 +282,11 @@
41
282
  ## [v1.2.0](https://github.com/cucumber/cucumber-rails/compare/v1.1.1...v1.2.0) (2011-11-03)
42
283
 
43
284
  ### Removed features
285
+
44
286
  * The (deprecated) tableish method has been removed. See https://gist.github.com/1299371 for an alternative. (Aslak Hellesøy)
45
287
 
46
288
  ### Bugfixes
289
+
47
290
  * Non-threadsafe database connections shared between threads ([#166](https://github.com/cucumber/cucumber-rails/issues/166) Matt Wynne)
48
291
 
49
292
  ## [v1.1.1](https://github.com/cucumber/cucumber-rails/compare/v1.1.0...v1.1.1) (2011-10-03)
@@ -73,9 +316,9 @@ with a Step Definition that perhaps looks like this:
73
316
 
74
317
  Given /^I have signed up as "([^"]*)"$/ do |email|
75
318
  visit(signup_path)
76
- fill_in('Email', :with => email)
77
- fill_in('Password', :with => 's3cr3t')
78
- fill_in('Password Confirmation', :with => 's3cr3t')
319
+ fill_in('Email', with: email)
320
+ fill_in('Password', with: 's3cr3t')
321
+ fill_in('Password Confirmation', with: 's3cr3t')
79
322
  click_button('Sign up')
80
323
  end
81
324
 
@@ -97,22 +340,26 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
97
340
  ## [v1.0.6](https://github.com/cucumber/cucumber-rails/compare/v1.0.5...v1.0.6) (2011-09-25)
98
341
 
99
342
  ### Bugfixes
343
+
100
344
  * Fix deprecation warnings ([#169](https://github.com/cucumber/cucumber-rails/issues/169), [#170](https://github.com/cucumber/cucumber-rails/pull/170) Micah Geisel)
101
345
  * Deprecate #tableish. The Capybara::Node::Finders API has obsoleted the need for it. ([#145](https://github.com/cucumber/cucumber-rails/issues/145) Aslak Hellesøy)
102
346
 
103
347
  ## [v1.0.5](https://github.com/cucumber/cucumber-rails/compare/v1.0.4...v1.0.5) (2011-09-14)
104
348
 
105
349
  ### Bugfixes
350
+
106
351
  * No = dependencies in gemspec, since rubies with old YAML (sych) can't read them. (Aslak Hellesøy)
107
352
 
108
353
  ## [v1.0.4](https://github.com/cucumber/cucumber-rails/compare/v1.0.3...v1.0.4) (2011-09-12)
109
354
 
110
355
  ### Bugfixes
356
+
111
357
  * Active_record hook prevents features that access multiple database from running correctly ([#152](https://github.com/cucumber/cucumber-rails/issues/152) winnipegtransit)
112
358
 
113
359
  ## [v1.0.3](https://github.com/cucumber/cucumber-rails/compare/v1.0.2...v1.0.3) (2011-09-11)
114
360
 
115
361
  ### Bugfixes
362
+
116
363
  * sqlite3-ruby is now sqlite3 ([#158](https://github.com/cucumber/cucumber-rails/pull/158) Trung Le)
117
364
  * Broken link in the USAGE file of the features generator ([#156](https://github.com/cucumber/cucumber-rails/pull/156) Pablo Alonso García)
118
365
  * Rails destroy cucumber:feature deletes the steps folder, even though it's not empty. ([#154](https://github.com/cucumber/cucumber-rails/pull/154]), [#111](https://github.com/cucumber/cucumber-rails/issues/111) mblake)
@@ -123,28 +370,33 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
123
370
  ## [v1.0.2](https://github.com/cucumber/cucumber-rails/compare/v1.0.1...v1.0.2) (2011-06-26)
124
371
 
125
372
  ### Bugfixes
373
+
126
374
  * Removed the dependency on rack-test, since it is not used directly. v1.0.1 was incompatible with Rails 3.0.9. (Aslak Hellesøy)
127
375
 
128
376
  ## [v1.0.1](https://github.com/cucumber/cucumber-rails/compare/v1.0.0...v1.0.1) (2011-06-25)
129
377
 
130
378
  ### New Features
131
- * Added a @no-database-cleaner tag you can add if you don't want to run DatabaseCleaner. Useful for debugging if you want to leave data in the database. Typical use case is to run `rails server --environment test` to look at/try app with data from test. (Aslak Hellesøy)
379
+
380
+ * Added a `@no-database-cleaner` tag you can add if you don't want to run DatabaseCleaner. Useful for debugging if you want to leave data in the database. Typical use case is to run `rails server --environment test` to look at/try app with data from test. (Aslak Hellesøy)
132
381
  * History file is now in Markdown format. (Aslak Hellesøy)
133
382
 
134
383
  ## [v1.0.0](https://github.com/cucumber/cucumber-rails/compare/v0.5.2...v1.0.0) (2011-06-20)
135
384
 
136
385
  ### New Features
137
- * Upgraded Cucumber dependency to 1.0.0. (Aslak Hellesøy)
386
+
387
+ * Upgraded Cucumber dependency to `1.0.0` (Aslak Hellesøy)
138
388
 
139
389
  ## [v0.5.2](https://github.com/cucumber/cucumber-rails/compare/v0.5.1...v0.5.2) (2011-06-07)
140
390
 
141
391
  ### New Features
392
+
142
393
  * Upgraded to Capybara 1.0.0.rc1 (Aslak Hellesøy)
143
394
  * Add stats to generator (#144 Aslak Hellesøy)
144
395
 
145
396
  ## [v0.5.1](https://github.com/cucumber/cucumber-rails/compare/v0.5.0...v0.5.1) (2011-05-25)
146
397
 
147
398
  ### Bugfixes
399
+
148
400
  * Mixed DB access feature for @javascript drivers (#142 Alexander Mankuta)
149
401
  * cucumber:feature and integers. not creating feature correctly (#30 John Ivanoff, Aslak Hellesøy)
150
402
  * New project can't find capybara's "visit" (#143 Aslak Hellesøy)
@@ -153,6 +405,7 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
153
405
  ## [v0.5.0](https://github.com/cucumber/cucumber-rails/compare/v0.5.0.beta1...v0.5.0) (2011-05-17)
154
406
 
155
407
  ### Bugfixes
408
+
156
409
  * undefined method `add_assertion' for nil:NilClass (#96, #97, #98 Aslak Hellesøy)
157
410
  * Capybara name error from env.rb (#125 Aslak Hellesøy)
158
411
  * Fixed date-localization bug (#138 Michael Opitz)
@@ -160,11 +413,13 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
160
413
  ## [v0.5.0.beta1](https://github.com/cucumber/cucumber-rails/compare/v0.4.1...v0.5.0.beta1) (2011-05-09)
161
414
 
162
415
  ### Removed features
416
+
163
417
  * Dropped support for Rails 2 (Aslak Hellesøy)
164
418
  * Dropped support for Webrat (Aslak Hellesøy)
165
419
  * Removed database cleaner strategy overrides (#134 Daniel Morrison, Daniel Duvall)
166
420
 
167
421
  ### Improvements
422
+
168
423
  * Upgrade to Capybara 1.0.0.beta1 or newer (#129, #130 Simon Menke, Klaus Hartl, Aslak Hellesøy)
169
424
  * Generated paths.rb cleanup (#133 Tim Pope)
170
425
  * Allow css pseudo-classes in scopers (#122 twalpole)
@@ -172,6 +427,7 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
172
427
  ## [v0.4.1](https://github.com/cucumber/cucumber-rails/compare/v0.4.0...v0.4.1) (2011-04-05)
173
428
 
174
429
  ### Bugfixes
430
+
175
431
  * Fixed incorrect warning in generated files. (#115 Emanuele Vicentini)
176
432
  * Fixed incorrect hooks for DatabaseCleaner (#113 Markus Bengts)
177
433
  * Throw an error if the user forgot to add DatabaseCleaner to the Gemfile, allowing them to decide whether or not to use it. (#36 Aslak Hellesøy, Ryan Bigg)
@@ -179,11 +435,13 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
179
435
  ## [v0.4.0](https://github.com/cucumber/cucumber-rails/compare/v0.3.2...v0.4.0) (2011-03-20)
180
436
 
181
437
  ### New Features
438
+
182
439
  * Add selectors helper (#63 Bodaniel Jeanes)
183
440
  * Capybara date stepdefs (#66 Rob Holland)
184
441
  * The World now includes Rack::Test::Methods, allowing get, post, put delete (Aslak Hellesøy)
185
442
 
186
443
  ### Bugfixes
444
+
187
445
  * Allow setting rails root (#102, #103, Fabio Kreusch)
188
446
  * Fix Date selection steps and helpers (#93, #99, #100, #101, #109 James Herdman, John Ferlito, twalpole, Geoff Drake, Ricky Robinson, Michael Fleet)
189
447
  * Can not run cucumber-rails (0.4.0.beta.1) with cucumber (0.10.0) (#89 Aslak Hellesøy)
@@ -194,6 +452,7 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
194
452
  * Gem dependency on Nokogiri (for #tableish). (#53 Aslak Hellesøy)
195
453
 
196
454
  ### Removed Features
455
+
197
456
  * Automatic detection of RSpec, Capybara and Webrat for install generator. Set gems explicitly in your Gemfile (Rails3) or environment.rb (Rails2)
198
457
  * Then /^(?:|I )should see JSON:$/. Use #get and #last_response instead. See features/rails3.feature. (Aslak Hellesøy)
199
458
  * Cucumber::Rails::World.use_transactional_fixtures. TODO: Explain what to do instead.
@@ -207,7 +466,7 @@ You can learn more about what Capybara has to offer in Capybara's [README](https
207
466
  ## [v0.3.1](https://github.com/cucumber/cucumber-rails/compare/v0.3.0...v0.3.1) (2010-05-04)
208
467
 
209
468
  This release has a lot of bugfixes! The test suite (based on Aruba) verifies that Cucumber-Rails
210
- now works with various combinations of:
469
+ now works with various combinations of:
211
470
 
212
471
  * Cucumber 0.6.x/0.7.2
213
472
  * Rails2/Rails3
@@ -215,7 +474,7 @@ now works with various combinations of:
215
474
  * Webrat/CapyBara
216
475
  * MRI 1.8.6/1.8.7/1.9.1
217
476
 
218
- This one requires a special mention: The handy (but error prone) rerun functionality has moved to a
477
+ This one requires a special mention: The handy (but error prone) rerun functionality has moved to a
219
478
  separate rerun profile, so all rerun.txt related issues should now be gone.
220
479
 
221
480
  * New Capybara Step Definitions for Dates. (Rob Holland)
@@ -239,34 +498,39 @@ This is a major release since we're now supporting both Rails 3 and RSpec 2. Old
239
498
  (Rails 2 and RSpec 1) are still supported.
240
499
 
241
500
  ### New Features
501
+
242
502
  * Support for both Rails-2.x and Rails-3.x (#10 Kristian Mandrup, Aleksey Gureiev, Ashley Moran, Aslak Hellesøy)
243
503
  * Support for both RSpec-1.x and RSpec-2.x (Louis Rose, Aslak Hellesøy)
244
504
  * Features will default to Javascript emulation unless you turn it off with @culerity, (Aslak Hellesøy)
245
505
  * Japanese translation. (MOROHASHI Kyosuke)
246
506
 
247
507
  ### Bugfixes
508
+
248
509
  * Support projects that don't use ActiveRecord (#14 Aslak Hellesøy)
249
510
  * Running test/unit tests when creating a skeleton (#12 Aleksey Gureiev)
250
511
  * Inform that config/database.yml is overwritten, be smarter about it and inform the user that it is forced. (#15 Aslak Hellesøy)
251
512
  * Reverts changes from issue #5 where verification of query string params was added to the step for being on a page. Adds step discussed in issue #11 for verification of query string. (#5, #11 Eric Milford)
252
513
  * Fixed typos in Capybara's web steps (has_not_xpath? => has_no_xpath?) (Thorbjørn Hermansen, Carlos Antonio da Silva)
253
514
 
254
-
255
515
  ### New Features
516
+
256
517
  * Added Danish translation (Kristian Mandrup)
257
518
  * Using Gemfile for Rails 3. Tidies it up and adds cucumber gems only if not already present! (Kristian Mandrup)
258
519
  * Added Generators wrapper module for Rails 3 generators so they are now all in Cucumber::Generators (Kristian Mandrup)
259
520
 
260
521
  ### Bugfixes
522
+
261
523
  * Started to work on solutions for generating suitable support files depending on Rails version
262
- - see skeleton_base.rb#create_feature_support and templates/support
524
+ - see skeleton_base.rb#create_feature_support and templates/support
263
525
 
264
526
  ## [v0.2.4](https://github.com/cucumber/cucumber-rails/compare/v0.2.3...v0.2.4) (2010-01-18)
265
527
 
266
528
  ### New Features
529
+
267
530
  * Added Spanish translation (Gabriel)
268
531
 
269
532
  ### Bugfixes
533
+
270
534
  * Fixed some broken Webrat/Test::Unit step definitions. (Aslak Hellesøy)
271
535
  * Better Javascript emulation with Capybara (#7 Thorbjørn Hermansen)
272
536
  * Removed stray quote in i18n web_steps.rb (Gabriel)
@@ -279,9 +543,11 @@ This is a major release since we're now supporting both Rails 3 and RSpec 2. Old
279
543
  ## [v0.2.3](https://github.com/cucumber/cucumber-rails/compare/v0.2.2...v0.2.3) (2010-01-03)
280
544
 
281
545
  ### New Features
546
+
282
547
  * The #tableish Proc can return Strings as well as Nokogiri nodes now. (Aslak Hellesøy)
283
548
 
284
549
  ### Bugfixes
550
+
285
551
  * Handle all types of URIs in "I should be on ..." steps. (#5 Andrew D. Smith)
286
552
 
287
553
  ## [v0.2.2](https://github.com/cucumber/cucumber-rails/compare/v0.2.1...v0.2.2) (2009-12-21)
@@ -293,6 +559,7 @@ This is a major release since we're now supporting both Rails 3 and RSpec 2. Old
293
559
  * cucumber.rake finds the wrong vendored cucumber when a plugin name starts with "cucumber" (#4 James Herdman, Paco Benavent, Aslak Hellesøy)
294
560
 
295
561
  ### New features
562
+
296
563
  * Czech translations. (Jiří Zajpt)
297
564
 
298
565
  ## [v0.2.1](https://github.com/cucumber/cucumber-rails/compare/v0.2.0...v0.2.1) (2009-12-16)
@@ -309,23 +576,23 @@ and to celebrate that cucumber-rails now supports Capybara as an alternative to
309
576
 
310
577
  ### UPGRADING FROM A PREVIOUS CUCUMBER SETUP
311
578
 
312
- 1. Remove your features/support/version_check.rb
313
- 1. Remove your features/step_definitions/webrat_steps.rb
579
+ 1. Remove your `features/support/version_check.rb`
580
+ 2. Remove your `features/step_definitions/webrat_steps.rb`
314
581
  If you have added your own custom step definitions to this file,
315
582
  put them in a different file under features/step_definitions
316
- 1. run "ruby script/generate cucumber --help" to see what options you have.
317
- 1. run "ruby script/generate cucumber" - plus whatever options you think fit for you.
583
+ 3. run `ruby script/generate cucumber --help` to see what options you have.
584
+ 4. run `ruby script/generate cucumber` - plus whatever options you think fit for you.
318
585
  Answer "n" (no) when asked to overwrite paths.rb.
319
586
  Answer "y" (yes) when asked to overwrite other files, but do "d" (diff) first.
320
587
  If you have edits in some of these files that you want to keep, store the diff
321
588
  in a temporary file and reapply after you have overwritten the file. ALso consider
322
589
  adding your custom code to another file that won't be overwritten the next time
323
590
  you upgrade.
324
-
325
- Many people have edits in their env.rb file. This is something you should try
591
+
592
+ Many people have edits in their `env.rb` file. This is something you should try
326
593
  to avoid in the future. Instead, keep your custom setup in a different file
327
- under features/support - Cucumber loads all files under features/**/*.rb anyway.
328
-
594
+ under `features/support` - Cucumber loads all files under `features/**/*.rb` anyway.
595
+
329
596
  If you have a Spork setup, see the end of this thread:
330
597
  http://groups.google.com/group/cukes/browse_thread/thread/475385cc26377215
331
598
 
@@ -339,3 +606,16 @@ and to celebrate that cucumber-rails now supports Capybara as an alternative to
339
606
  * Webrat step "Then I should be on" should use request_uri instead of path for missing query string parameters (ZhangJinzhu)
340
607
  * Added MIME type parameter to attach file step definition (Felix Flores)
341
608
  * Added check when including ActiveSupport::Testing::SetupAndTeardown for older Rails versions (Jeremy Durham)
609
+
610
+ [deivid-rodriguez]: https://github.com/deivid-rodriguez
611
+ [koic]: https://github.com/koic
612
+ [kotovalexarian]: https://github.com/kotovalexarian
613
+ [mvz]: https://github.com/mvz
614
+ [olleolleolle]: https://github.com/olleolleolle
615
+ [luke-hill]: https://github.com/luke-hill
616
+ [amatsuda]: https://github.com/amatsuda
617
+ [xtrasimplicity]: https://github.com/xtrasimplicity
618
+ [janko]: https://github.com/janko
619
+ [damonjmurray]: https://github.com/damonjmurray
620
+ [orien]: https://github.com/orien
621
+ [wagenet]: https://github.com/wagenet
data/CONTRIBUTING.md CHANGED
@@ -13,29 +13,32 @@ We appreciate that. But before you do, please learn our basic rules:
13
13
 
14
14
  # Contributing to cucumber-rails
15
15
 
16
- This document is a guide for those maintaining cucumber-Rails, and others who would like to submit patches.
16
+ This document is a guide for those maintaining Cucumber-Rails, and others who would like to submit patches.
17
17
 
18
18
  ## Note on Patches/Pull Requests
19
19
 
20
20
  * Fork the project. Make a branch for your change.
21
21
  * Make your feature addition or bug fix.
22
- * Make sure your patch is well covered by tests. We don't accept changes to cucumber-rails that aren't tested.
23
- * Please do not change the Rakefile, version, or history.
24
- (if you want to have your own version, that is fine but
25
- bump version in a commit by itself so we can ignore when we merge your change)
22
+ * Make sure your patch is well covered by tests. We don't accept changes to `cucumber-rails` that aren't tested.
23
+ * Please do not change the Rakefile, version, or CHANGELOG.
26
24
  * Send us a pull request.
27
25
 
28
26
  ## Running tests
29
27
 
30
28
  gem install bundler
31
29
  bundle install
32
- bundle exec rake
30
+ bin/install_geckodriver.sh
31
+ bin/install_webpacker.sh
32
+ # Then to run tests on one specific gemfile (i.e. Rails 4.2), run
33
+ bundle exec appraisal rails_4_2 rake test
34
+ # Or run tests across the full supported stack. Note that because we support many versions. This takes 5-10 minutes
35
+ bundle exec rake appraisal
33
36
 
34
37
  ## Release Process
35
38
 
36
- * Make sure `History.md` is updated with the upcoming version number, and has entries for all fixes.
37
- * No need to add a `History.md` header at this point - this should be done when a new change is made, later.
38
- * Make sure you have up-to-date and clean copy of cucumber/cucumber.github.com.git at the same level as cucumber repo.
39
+ * Make sure `CHANGELOG.md` is updated with the upcoming version number, and has entries for all fixes.
40
+ * No need to add a new version header at this point - this should be done when a new release is made, later.
41
+ * Make sure you have up-to-date and clean copy of `cucumber/cucumber.github.com.git` at the same level as cucumber repo.
39
42
 
40
43
  Now release it
41
44
 
@@ -43,30 +46,18 @@ Now release it
43
46
  bundle exec rake
44
47
  git commit -m "Release X.Y.Z"
45
48
  rake release
46
-
47
- ### NOTE:
48
-
49
- If after running the rake release task you get an eror similiar to this:
50
-
51
- rake aborted!
52
- Couldn't git push. `git push 2>&1' failed with the following output:
53
-
54
- To git@github.com:cucumber/cucumber-rails.git
55
- ! [rejected] rails-2.3.x -> rails-2.3.x (non-fast-forward)
56
- error: failed to push some refs to 'git@github.com:cucumber/cucumber-rails.git'
57
-
58
- make sure that you have pulled all the recent changes from both the master and the rails-2.3.x branch
59
49
 
60
50
  ## Gaining Release Karma
61
51
 
62
- To become a release manager, create a pull request adding your name to the list below, and include your Rubygems email address in the ticket. One of the existing Release managers will then add you.
52
+ To become a release manager, create a pull request adding your name to the list below, including
53
+ your Rubygems email address in the ticket. One of the existing Release managers will then add you.
63
54
 
64
55
  Current release managers:
65
- * Matt Wynne
66
- * Aslak Hellesøy
67
56
  * Kosmas Chatzimichalis
57
+ * Matt Wynne
58
+ * Mathieu Jobin
59
+ * Andrew Walter
68
60
 
69
61
  To grant release karma, issue the following command:
70
62
 
71
- gem owner cucumber --add <NEW OWNER RUBYGEMS EMAIL>
72
-
63
+ gem owner cucumber-rails --add <NEW OWNER RUBYGEMS EMAIL>
data/Gemfile CHANGED
@@ -1,7 +1,5 @@
1
- source "https://rubygems.org"
1
+ # frozen_string_literal: true
2
2
 
3
- # Test dependencies for Rails in the default test task, as test-generated
4
- # apps do not run bundler for speed reasons. Kept here so they can be
5
- # excluded from Appraisal-generated gemfiles.
3
+ source 'https://rubygems.org'
6
4
 
7
5
  gemspec
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License
2
2
 
3
- Copyright (c) 2008,2009,2010,2011,2012,2013 Aslak Hellesøy and the Cucumber Team.
3
+ Copyright (c) 2008-2019 Aslak Hellesøy and the Cucumber Team.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining
6
6
  a copy of this software and associated documentation files (the