cucumber-rails 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +60 -19
  3. data/lib/cucumber/rails/database/deletion_strategy.rb +2 -0
  4. data/lib/cucumber/rails/database/shared_connection_strategy.rb +2 -0
  5. data/lib/cucumber/rails/database/strategy.rb +2 -0
  6. data/lib/cucumber/rails/database/truncation_strategy.rb +2 -0
  7. metadata +13 -226
  8. data/Appraisals +0 -26
  9. data/Gemfile +0 -5
  10. data/Rakefile +0 -53
  11. data/bin/install_geckodriver.sh +0 -19
  12. data/bin/install_webpacker.sh +0 -9
  13. data/config/cucumber.yml +0 -17
  14. data/cucumber-rails.gemspec +0 -53
  15. data/dev_tasks/cucumber.rake +0 -5
  16. data/dev_tasks/rspec.rake +0 -5
  17. data/dev_tasks/yard.rake +0 -28
  18. data/dev_tasks/yard/default/layout/html/bubble_32x32.png +0 -0
  19. data/dev_tasks/yard/default/layout/html/footer.erb +0 -5
  20. data/dev_tasks/yard/default/layout/html/index.erb +0 -1
  21. data/dev_tasks/yard/default/layout/html/layout.erb +0 -25
  22. data/dev_tasks/yard/default/layout/html/logo.erb +0 -1
  23. data/dev_tasks/yard/default/layout/html/setup.rb +0 -9
  24. data/features/allow_rescue.feature +0 -66
  25. data/features/annotations.feature +0 -20
  26. data/features/capybara_javascript_drivers.feature +0 -132
  27. data/features/choose_javascript_database_strategy.feature +0 -125
  28. data/features/configuration.feature +0 -48
  29. data/features/database_cleaner.feature +0 -131
  30. data/features/disable_automatic_database_cleaning.feature +0 -49
  31. data/features/emulate_javascript.feature +0 -109
  32. data/features/install_cucumber_rails.feature +0 -14
  33. data/features/no_database.feature +0 -61
  34. data/features/raising_errors.feature +0 -22
  35. data/features/rerun_profile.feature +0 -47
  36. data/features/rest_api.feature +0 -47
  37. data/features/step_definitions/cucumber_rails_steps.rb +0 -80
  38. data/features/support/aruba.rb +0 -5
  39. data/features/support/cucumber_rails_helper.rb +0 -86
  40. data/features/support/env.rb +0 -6
  41. data/features/support/hooks.rb +0 -8
  42. data/gemfiles/rails_5_0.gemfile +0 -10
  43. data/gemfiles/rails_5_1.gemfile +0 -10
  44. data/gemfiles/rails_5_2.gemfile +0 -9
  45. data/gemfiles/rails_6_0.gemfile +0 -8
  46. data/spec/cucumber/rails/database_spec.rb +0 -74
  47. data/spec/examples.txt +0 -19
  48. data/spec/generators/cucumber/install_generator_spec.rb +0 -55
  49. data/spec/spec_helper.rb +0 -16
  50. data/tmp/aruba/test_app/Gemfile +0 -62
  51. data/tmp/aruba/test_app/Gemfile.lock +0 -249
  52. data/tmp/aruba/test_app/README.md +0 -24
  53. data/tmp/aruba/test_app/Rakefile +0 -6
  54. data/tmp/aruba/test_app/app/assets/config/manifest.js +0 -3
  55. data/tmp/aruba/test_app/app/assets/javascripts/application.js +0 -16
  56. data/tmp/aruba/test_app/app/assets/javascripts/appointments.coffee +0 -3
  57. data/tmp/aruba/test_app/app/assets/javascripts/cable.js +0 -13
  58. data/tmp/aruba/test_app/app/assets/stylesheets/application.css +0 -15
  59. data/tmp/aruba/test_app/app/assets/stylesheets/appointments.scss +0 -3
  60. data/tmp/aruba/test_app/app/assets/stylesheets/scaffolds.scss +0 -84
  61. data/tmp/aruba/test_app/app/channels/application_cable/channel.rb +0 -4
  62. data/tmp/aruba/test_app/app/channels/application_cable/connection.rb +0 -4
  63. data/tmp/aruba/test_app/app/controllers/application_controller.rb +0 -2
  64. data/tmp/aruba/test_app/app/controllers/appointments_controller.rb +0 -74
  65. data/tmp/aruba/test_app/app/helpers/application_helper.rb +0 -2
  66. data/tmp/aruba/test_app/app/helpers/appointments_helper.rb +0 -2
  67. data/tmp/aruba/test_app/app/jobs/application_job.rb +0 -2
  68. data/tmp/aruba/test_app/app/mailers/application_mailer.rb +0 -4
  69. data/tmp/aruba/test_app/app/models/application_record.rb +0 -3
  70. data/tmp/aruba/test_app/app/models/appointment.rb +0 -2
  71. data/tmp/aruba/test_app/app/views/appointments/_appointment.json.jbuilder +0 -2
  72. data/tmp/aruba/test_app/app/views/appointments/_form.html.erb +0 -27
  73. data/tmp/aruba/test_app/app/views/appointments/edit.html.erb +0 -6
  74. data/tmp/aruba/test_app/app/views/appointments/index.html.erb +0 -29
  75. data/tmp/aruba/test_app/app/views/appointments/index.json.jbuilder +0 -1
  76. data/tmp/aruba/test_app/app/views/appointments/new.html.erb +0 -5
  77. data/tmp/aruba/test_app/app/views/appointments/show.html.erb +0 -14
  78. data/tmp/aruba/test_app/app/views/appointments/show.json.jbuilder +0 -1
  79. data/tmp/aruba/test_app/app/views/layouts/application.html.erb +0 -15
  80. data/tmp/aruba/test_app/app/views/layouts/mailer.html.erb +0 -13
  81. data/tmp/aruba/test_app/app/views/layouts/mailer.text.erb +0 -1
  82. data/tmp/aruba/test_app/bin/bundle +0 -3
  83. data/tmp/aruba/test_app/bin/rails +0 -4
  84. data/tmp/aruba/test_app/bin/rake +0 -4
  85. data/tmp/aruba/test_app/bin/setup +0 -36
  86. data/tmp/aruba/test_app/bin/update +0 -31
  87. data/tmp/aruba/test_app/bin/yarn +0 -11
  88. data/tmp/aruba/test_app/config.ru +0 -5
  89. data/tmp/aruba/test_app/config/application.rb +0 -19
  90. data/tmp/aruba/test_app/config/boot.rb +0 -3
  91. data/tmp/aruba/test_app/config/cable.yml +0 -10
  92. data/tmp/aruba/test_app/config/credentials.yml.enc +0 -1
  93. data/tmp/aruba/test_app/config/cucumber.yml +0 -9
  94. data/tmp/aruba/test_app/config/database.yml +0 -25
  95. data/tmp/aruba/test_app/config/environment.rb +0 -5
  96. data/tmp/aruba/test_app/config/environments/development.rb +0 -61
  97. data/tmp/aruba/test_app/config/environments/production.rb +0 -94
  98. data/tmp/aruba/test_app/config/environments/test.rb +0 -46
  99. data/tmp/aruba/test_app/config/initializers/application_controller_renderer.rb +0 -8
  100. data/tmp/aruba/test_app/config/initializers/assets.rb +0 -14
  101. data/tmp/aruba/test_app/config/initializers/backtrace_silencers.rb +0 -7
  102. data/tmp/aruba/test_app/config/initializers/content_security_policy.rb +0 -25
  103. data/tmp/aruba/test_app/config/initializers/cookies_serializer.rb +0 -5
  104. data/tmp/aruba/test_app/config/initializers/filter_parameter_logging.rb +0 -4
  105. data/tmp/aruba/test_app/config/initializers/inflections.rb +0 -16
  106. data/tmp/aruba/test_app/config/initializers/mime_types.rb +0 -4
  107. data/tmp/aruba/test_app/config/initializers/wrap_parameters.rb +0 -14
  108. data/tmp/aruba/test_app/config/locales/en.yml +0 -33
  109. data/tmp/aruba/test_app/config/master.key +0 -1
  110. data/tmp/aruba/test_app/config/puma.rb +0 -37
  111. data/tmp/aruba/test_app/config/routes.rb +0 -4
  112. data/tmp/aruba/test_app/config/storage.yml +0 -34
  113. data/tmp/aruba/test_app/db/development.sqlite3 +0 -0
  114. data/tmp/aruba/test_app/db/migrate/20200821080656_create_appointments.rb +0 -10
  115. data/tmp/aruba/test_app/db/schema.rb +0 -22
  116. data/tmp/aruba/test_app/db/seeds.rb +0 -7
  117. data/tmp/aruba/test_app/db/test.sqlite3 +0 -0
  118. data/tmp/aruba/test_app/features/create_appointment.feature +0 -9
  119. data/tmp/aruba/test_app/features/create_appointment_steps.rb +0 -19
  120. data/tmp/aruba/test_app/features/support/env.rb +0 -18
  121. data/tmp/aruba/test_app/lib/tasks/cucumber.rake +0 -76
  122. data/tmp/aruba/test_app/log/development.log +0 -27
  123. data/tmp/aruba/test_app/log/test.log +0 -38
  124. data/tmp/aruba/test_app/package.json +0 -5
  125. data/tmp/aruba/test_app/public/404.html +0 -67
  126. data/tmp/aruba/test_app/public/422.html +0 -67
  127. data/tmp/aruba/test_app/public/500.html +0 -66
  128. data/tmp/aruba/test_app/public/apple-touch-icon-precomposed.png +0 -0
  129. data/tmp/aruba/test_app/public/apple-touch-icon.png +0 -0
  130. data/tmp/aruba/test_app/public/favicon.ico +0 -0
  131. data/tmp/aruba/test_app/public/robots.txt +0 -1
  132. data/tmp/aruba/test_app/script/cucumber +0 -11
  133. data/tmp/aruba/test_app/test/application_system_test_case.rb +0 -5
  134. data/tmp/aruba/test_app/test/controllers/appointments_controller_test.rb +0 -48
  135. data/tmp/aruba/test_app/test/fixtures/appointments.yml +0 -9
  136. data/tmp/aruba/test_app/test/models/appointment_test.rb +0 -7
  137. data/tmp/aruba/test_app/test/system/appointments_test.rb +0 -45
  138. data/tmp/aruba/test_app/test/test_helper.rb +0 -10
  139. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/0I/0I0oT83oN3NKiEi9XIhexiT3XgkA8mKyCbs25v3l20g.cache +0 -1
  140. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/0W/0WnFNEwHN4bhDiFTvyMWURx02L4yP3gkP7vtjzKQFVo.cache +0 -1
  141. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/2B/2Bg65dpvTdePrXa_wG6RsHpQzbqVSiHK0FVa0WdOJ4k.cache +0 -0
  142. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/2r/2r_85kVmIcWzvJH72GapWtLDhaMP2HEziNxykyYpAUg.cache +0 -1
  143. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/72/72jdZDzrM3-D_zYkIiPdAWQNeaFsqah154_QvcqWqTQ.cache +0 -3
  144. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/99/99m8UCKl4j8IpsVOK8ltLHyNh8Ae0nHw3GBkC34V_co.cache +0 -2
  145. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/9O/9OOXnKHBQnaCeE5HDe5csQsItouzWM6rTl8sESvkGTE.cache +0 -1
  146. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/AF/AFloQwm_M7GZudPY87xx4TA0xEeuX9Psl0SJ94i5EyU.cache +0 -3
  147. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/AP/APDAc8aUg_16wNWrVhCJcKeqbxyOScYGVhiDVgbrV7U.cache +0 -0
  148. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/B4/B43LeT9Wba4fLvXw-C_kKq-x9HwYZxnBBiltbIufzzQ.cache +0 -2
  149. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/EO/EOut5kyDPr7aKrHdvDsNJuYarA8XGnpAlDvBimlaC08.cache +0 -0
  150. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/GJ/GJzxuc2i_d4Uhxs4IMnbQXhxBc9CTLrnQyzxwTqKOBw.cache +0 -0
  151. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Ge/Ge2oyaUStbQszLfXjgTi6LkncyS5SKfV8RJwbRA3HbI.cache +0 -1
  152. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/HC/HCDOUd7-S45aJ_PjVAC_Vmjyud3i1aQv4cE3t9_Z3Dw.cache +0 -2
  153. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Hv/HvPd_vK17QbhWq8QnCuyhqm0cPaGnHyO9lSzN-icQdg.cache +0 -2
  154. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/II/IIhUO-5-DcfCyD_rVJeHjRMNVJxLmAmXP8i2XEjFpns.cache +0 -1
  155. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Ka/KaLHRsUYc4EUxUr4q_UhArFJUTF_EaBklpeU4TsE9SY.cache +0 -1
  156. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/MZ/MZcwDENEs93Wd9q7A_7UWdfJrWsBXa0pGp03P9mqG2I.cache +0 -3
  157. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Nw/NwHea3ImBECnlmojPb9X9ZDfvRRuX_dX9sxISdtp9-A.cache +0 -0
  158. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/PP/PPKuKT7m2PMDHVzBcYjePvXU6CbCW63Iqe3Q2a-Jdh8.cache +0 -1
  159. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/RE/REtgGrS74n4Y7OKRcGvZsA2EUClg_RM66mVgGpySI20.cache +0 -1
  160. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Rk/RkQLRXSz5LhJQnH7BT-ZDkVK0Rx8N9KhcVwR2A1HY4M.cache +0 -2
  161. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Sx/SxtNEQ-KKVBCTtsDD-xf4oJEIdBPIHkGktnLXvG-GRk.cache +0 -1
  162. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/TL/TLxLzqEAxKzTHH9EwSg5Lvcp3zgGuhjTjed121DSu9U.cache +0 -0
  163. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/U1/U1D7nCXYBD3VlPnXGs_6mRtlhs-Gvv_vvCUYlTf4Grw.cache +0 -3
  164. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/U6/U6pXyI-5haNcHRdsB-SoztzlXb98-256hFReXsL31J4.cache +0 -2
  165. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/UE/UEKUaC9O_XBO5acP8HnxcJ1dtNM_1C7MTofkTQvPgRA.cache +0 -1
  166. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/UV/UVcnI5bo-eQvULfmzeQUFVTDYEMF2cbAXpsOsh01XNY.cache +0 -1
  167. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/WK/WK8RpMP5qb9GRQTsTHAzlfo8t2nsTLU6B8CQAc4UfOU.cache +0 -1
  168. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Xk/Xk8p9O39-syzKbpnoMRChld0TpoZFWlNIzeT5XKw2fQ.cache +0 -0
  169. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/Zv/ZvCEW2ZyS-k4cHH7Gd8P2nKFE9Uh1VOrfR-1PYY2yz8.cache +0 -5
  170. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/ac/acWu1-1ZAW1jRVKlHYlzlEg28lk-SdHfTq-P-viJMS0.cache +0 -1
  171. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/b3/b3NiYrQOlN2zxiJYqbl4gmvK6it3Md9gSzAYgsIMhnY.cache +0 -1
  172. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/c1/c1Pm-rFPEB3LXIjOtswD6x8SEAgI9y2BR16jc8ifcsc.cache +0 -1
  173. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/em/emTQG2a9zF8NuvElLOnEpNJp0wq3_gVSDAM60vyXAzE.cache +0 -0
  174. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/fX/fXH3Db_88TmJFhRydoFTx8tZbHAkLzK2ZZ0lsBEg8xA.cache +0 -0
  175. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/gI/gIHntmCf7DbObPL_KZJYSgduAmqX18ZZPOtq85pn8vo.cache +0 -0
  176. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/kP/kPwbLAUCLjv0x6fe5lvZpmUkgmvQSDHSdEOSdbMyDgY.cache +0 -0
  177. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/kT/kT98Z_slHI6SgdEmoAtKAHyJQjTHdbe6GAbB27RP2uI.cache +0 -1
  178. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/mt/mtT4Rwi7H_vHQXdxxPvvzhL4ziA7X9WK-JXzacxWlEA.cache +0 -0
  179. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/mz/mzgD6X_N-fO95dP8Q1Q1sApCrbSmgPgsuEKv65KYcdo.cache +0 -3
  180. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/oi/oiPhXw8pYdWv5T4qRFzePHaXZLI50xMvvTyfry-ILSo.cache +0 -1
  181. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/r-/r--YB1ugrZ4F-ogbLLYNwIH3j9pQ2u_ZBjTJxoS7TrM.cache +0 -1
  182. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/s6/s68UIyg0lNko7IA42JXv_wwy9Ea3WH-zc9h0GYPg88Y.cache +0 -1
  183. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/si/siT97rfEKbIWcCj6KUBChX7kpRBKI2fAeGGwpsz0tTU.cache +0 -0
  184. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/st/stqDgDfAemfEq7ZxlEj6YThpn8_1Nfw2bRVA0N03YTw.cache +0 -1
  185. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/t9/t93lpjyly3MvgKs51_OlLXneJXGyYFGmshXsk4Wr69M.cache +0 -1
  186. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/tE/tEy2QePsDnmFyyAQEric23sSBnfHBst3SEM7p-J7el8.cache +0 -2
  187. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/tR/tRV7SyAY9c71G0o-8bElvNI76KcWhc5NVm48xflMPpM.cache +0 -0
  188. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/tg/tggwa2O6A41xeZTK4SR0qcX0X55aOGg6q8ZWfqma1vM.cache +0 -0
  189. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/uB/uBKOYcdzL_6Amevsu-uKAMTg7QGW5kgC0t5sAZINrcI.cache +0 -0
  190. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/uE/uEyPXY2m04nerJV0pn3p-B-BlkJ08oufpQH1G2QXPw4.cache +0 -1
  191. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/up/upyndqsU9bU6WV8qyMy7MLpcQoybRqgj-qA3C3pjzXY.cache +0 -0
  192. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/ux/uxx-W2TOCdnAEGX0ZLThb_QIEbLYutX8qCwD0glYCKE.cache +0 -3
  193. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/vC/vCsc-q2WmT8vWM2d2pb6_5hFav8mGlylwEKVWQvsumo.cache +0 -1
  194. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/vc/vcgiILg1wO98x-a4kX678ASAFWA1cL0iVx07VkHLPqA.cache +0 -0
  195. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/vu/vu6xNIGT6zorPmcKfd7edgxBltTmIRXU281uyK51kkU.cache +0 -1
  196. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/w4/w4y_Lms54hD2Nivh5PHeccAmh2DX53sc_HDTQYNyNXw.cache +0 -3
  197. data/tmp/aruba/test_app/tmp/cache/assets/sprockets/v3.0/yZ/yZpoD5Zf4RAQoOwi5kMVksuta_0KhYSK_Yy_6Ykyt7E.cache +0 -1
  198. data/tmp/aruba/test_app/tmp/development_secret.txt +0 -1
data/Appraisals DELETED
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- appraise 'rails_5_0' do
4
- gem 'capybara', '< 3'
5
- gem 'cucumber', '< 4'
6
- gem 'rails', '~> 5.0.7'
7
- gem 'sqlite3', '~> 1.3.13'
8
- end
9
-
10
- appraise 'rails_5_1' do
11
- gem 'capybara', '< 3.15'
12
- gem 'cucumber', '< 5'
13
- gem 'rails', '~> 5.1.7'
14
- gem 'sqlite3', '~> 1.3.13'
15
- end
16
-
17
- appraise 'rails_5_2' do
18
- gem 'capybara', '< 3.33'
19
- gem 'rails', '~> 5.2.4'
20
- gem 'sqlite3', '~> 1.3.13'
21
- end
22
-
23
- appraise 'rails_6_0' do
24
- gem 'rails', '~> 6.0.3'
25
- gem 'sqlite3', '~> 1.4'
26
- end
data/Gemfile DELETED
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source 'https://rubygems.org'
4
-
5
- gemspec
data/Rakefile DELETED
@@ -1,53 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- CUCUMBER_RAILS_VERSION =
4
- Gem::Specification.load("#{File.dirname(__FILE__)}/cucumber-rails.gemspec").version.version
5
- require 'rubygems'
6
- require 'bundler'
7
- require 'bundler/setup'
8
- require 'appraisal'
9
- require 'rdoc' # https://github.com/lsegal/yard/commit/b861dcc2d7f7e1fbbed7b552ac2e4f7caf68bafa
10
- require 'rake/clean'
11
- require 'pathname'
12
- Bundler::GemHelper.install_tasks
13
-
14
- $LOAD_PATH.unshift("#{File.dirname(__FILE__)}/lib")
15
- Dir["#{File.dirname(__FILE__)}/dev_tasks/*.rake"].sort.each { |ext| load ext }
16
-
17
- CLEAN.include('doc', 'tmp')
18
-
19
- task default: :test
20
-
21
- task test: %i[spec cucumber]
22
-
23
- namespace :test do
24
- desc 'Run tests against all gemfiles'
25
- task :all do
26
- Rake::Task['appraisal'].invoke('test')
27
- end
28
-
29
- desc 'Run tests against specified gemfile, e.g. rake test:gemfile[rails_6_0]'
30
- task :gemfile, :name do |_task, args|
31
- unless args.name && Pathname.new("gemfiles/#{args.name}.gemfile").exist?
32
- raise ArgumentError, "You must provide the name of an existing Appraisal gemfile,
33
- e.g. 'rake test:gemfile[rails_6_0]'"
34
- end
35
-
36
- Rake::Task["appraisal:#{args.name}"].invoke('test')
37
- end
38
- end
39
-
40
- namespace :gemfiles do
41
- desc 'Install dependencies for all gemfiles'
42
- task :install do
43
- ENV['BUNDLE_GEMFILE'] = 'Gemfile.appraisal'
44
- Rake::Task['appraisal:install'].invoke
45
- end
46
-
47
- task :clean do
48
- FileUtils.rm_rf('gemfiles/*')
49
- end
50
-
51
- desc 'Rebuild generated gemfiles and install dependencies'
52
- task rebuild: %i[clean install]
53
- end
@@ -1,19 +0,0 @@
1
- #!/bin/bash
2
-
3
- set -xeuo pipefail
4
-
5
- curl --silent \
6
- --show-error \
7
- --location \
8
- --fail \
9
- --retry 3 \
10
- --output /tmp/geckodriver_linux64.tar.gz \
11
- https://github.com/mozilla/geckodriver/releases/download/v0.27.0/geckodriver-v0.27.0-linux64.tar.gz
12
-
13
- sudo tar -C /usr/local/bin -xvzf /tmp/geckodriver_linux64.tar.gz geckodriver
14
-
15
- rm /tmp/geckodriver_linux64.tar.gz
16
-
17
- geckodriver --version
18
-
19
- set +x
@@ -1,9 +0,0 @@
1
- #!/bin/bash
2
-
3
- set -xeuo pipefail
4
-
5
- curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
6
- echo 'deb https://dl.yarnpkg.com/debian/ stable main' | sudo tee /etc/apt/sources.list.d/yarn.list
7
- sudo apt update && sudo apt install --yes yarn
8
-
9
- set +x
data/config/cucumber.yml DELETED
@@ -1,17 +0,0 @@
1
- <%
2
- rerun_file = '.cucumber.rerun'
3
- failing_scenarios = IO.read(rerun_file) rescue ''
4
- path = if failing_scenarios.empty?
5
- 'features'
6
- else
7
- puts "Running failed scenarios"
8
- failing_scenarios.gsub /\s/, ' '
9
- end
10
- opts = [
11
- "--format #{path == 'features' ? 'progress' : 'pretty'}",
12
- "--format rerun -o #{rerun_file}"
13
- ]
14
- rails_version = `bundle exec rails --version`.match(/[\d.]+$/).to_s
15
- optlist = opts.join(' ')
16
- %>
17
- default: <%= path %> <%= optlist %> --tags 'not @broken'
@@ -1,53 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'rake/file_list'
4
- $LOAD_PATH.unshift File.expand_path('lib', __dir__)
5
-
6
- Gem::Specification.new do |s|
7
- s.name = 'cucumber-rails'
8
- s.version = '2.2.0'
9
- s.authors = ['Aslak Hellesøy', 'Dennis Blöte', 'Rob Holland']
10
- s.description = 'Cucumber Generator and Runtime for Rails'
11
- s.summary = "#{s.name}-#{s.version}"
12
- s.email = 'cukes@googlegroups.com'
13
- s.homepage = 'https://cucumber.io'
14
-
15
- s.license = 'MIT'
16
-
17
- s.metadata = {
18
- 'bug_tracker_uri' => 'https://github.com/cucumber/cucumber-rails/issues',
19
- 'changelog_uri' => "https://github.com/cucumber/cucumber-rails/blob/v#{s.version}/CHANGELOG.md",
20
- 'documentation_uri' => 'https://cucumber.io/docs',
21
- 'mailing_list_uri' => 'https://groups.google.com/forum/#!forum/cukes',
22
- 'source_code_uri' => "https://github.com/cucumber/cucumber-rails/tree/v#{s.version}"
23
- }
24
-
25
- s.add_runtime_dependency('capybara', ['>= 2.18', '< 4']) # We support legacy capybara (But only the last 2.x)
26
- s.add_runtime_dependency('cucumber', ['>= 3.0.2', '< 6']) # Support cucumber in the 3.x / 4.x / 5.x revisions
27
- s.add_runtime_dependency('mime-types', ['~> 3.2']) # Only support the latest major (3+ years old)
28
- s.add_runtime_dependency('nokogiri', '~> 1.8') # Only support the latest major (3+ years old)
29
- s.add_runtime_dependency('rails', ['>= 5.0', '< 7']) # We support any version of Rails in the 5.x and 6.x series
30
-
31
- # Main development dependencies
32
- s.add_development_dependency('ammeter', '>= 1.1.4')
33
- s.add_development_dependency('appraisal', '~> 2.2')
34
- s.add_development_dependency('aruba', '~> 1.0')
35
- s.add_development_dependency('bundler', '>= 1.17')
36
- s.add_development_dependency('rake', '>= 12.0')
37
- s.add_development_dependency('rspec', '~> 3.6')
38
- s.add_development_dependency('rubocop', '~> 0.89.0')
39
- s.add_development_dependency('rubocop-packaging', '~> 0.3.0')
40
- s.add_development_dependency('rubocop-performance', '~> 1.7.1')
41
- s.add_development_dependency('rubocop-rspec', '~> 1.42.0')
42
- s.add_development_dependency('sqlite3', '~> 1.3')
43
-
44
- # For Documentation:
45
- s.add_development_dependency('rdoc', '>= 6.0')
46
- s.add_development_dependency('yard', '~> 0.9.10')
47
-
48
- s.required_ruby_version = '>= 2.4.0'
49
- s.rubygems_version = '>= 1.6.1'
50
- s.files = Rake::FileList['**/*'].exclude(*File.read('.gitignore').split)
51
- s.test_files = Dir['{spec,features}/**/*']
52
- s.require_path = 'lib'
53
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'cucumber/rake/task'
4
-
5
- Cucumber::Rake::Task.new
data/dev_tasks/rspec.rake DELETED
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'rspec/core/rake_task'
4
-
5
- RSpec::Core::RakeTask.new
data/dev_tasks/yard.rake DELETED
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'yard'
4
- require 'yard/rake/yardoc_task'
5
-
6
- SITE_DIR = File.expand_path("#{File.dirname(__FILE__)}/../cucumber.github.com")
7
- API_DIR = File.join(SITE_DIR, 'api', 'cucumber-rails', 'ruby', 'yardoc')
8
-
9
- namespace :api do
10
- file :dir do
11
- raise "You need to git clone git@github.com:cucumber/cucumber.github.com.git #{SITE_DIR}" unless File.directory?(SITE_DIR)
12
-
13
- sh('git pull origin master')
14
- mkdir_p API_DIR
15
- end
16
-
17
- template_path = File.expand_path(File.join(File.dirname(__FILE__), 'yard'))
18
- YARD::Templates::Engine.register_template_path(template_path)
19
- YARD::Rake::YardocTask.new(:yard) do |yard|
20
- dir = API_DIR
21
- mkdir_p dir
22
- yard.options = ['--out', dir]
23
- end
24
- task yard: :dir
25
-
26
- desc "Generate YARD docs for Cucumber-Rails' API"
27
- task doc: :yard
28
- end
@@ -1,5 +0,0 @@
1
- <div id="footer">
2
- Generated on <%= Time.now.strftime("%c") %> by
3
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
4
- <%= YARD::VERSION %> (ruby-<%= RUBY_VERSION %>).
5
- </div>
@@ -1 +0,0 @@
1
- <%= yieldall %>
@@ -1,25 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <%= erb(:headers) %>
6
- </head>
7
- <body>
8
- <script type="text/javascript" charset="utf-8">
9
- if (window.top.frames.main) document.body.className = 'frames';
10
- </script>
11
-
12
- <div id="header">
13
- <%= erb(:logo) %>
14
- <%= erb(:breadcrumb) %>
15
- <%= erb(:search) %>
16
- <div class="clear"></div>
17
- </div>
18
-
19
- <iframe id="search_frame"></iframe>
20
-
21
- <div id="content"><%= yieldall %></div>
22
-
23
- <%= erb(:footer) %>
24
- </body>
25
- </html>
@@ -1 +0,0 @@
1
- <h3><img src="<%= url_for('images/bubble_32x32.png') %>"></img> Cucumber-Rails <%= CUCUMBER_RAILS_VERSION %></h3>
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- def init
4
- super
5
- options[:serializer].serialize(
6
- '/images/bubble_32x32.png',
7
- IO.read("#{File.dirname(__FILE__)}/bubble_32x32.png")
8
- )
9
- end
@@ -1,66 +0,0 @@
1
- Feature: Allow Cucumber to rescue exceptions
2
-
3
- Background: A controller that raises an exception
4
- Given I have created a new Rails app and installed cucumber-rails
5
- When I write to "app/controllers/posts_controller.rb" with:
6
- """
7
- class PostsController < ApplicationController
8
- def index
9
- raise 'There is an error in index'
10
- end
11
- end
12
- """
13
- And I write to "config/routes.rb" with:
14
- """
15
- TestApp::Application.routes.draw do
16
- resources :posts
17
- end
18
- """
19
-
20
- Scenario: Allow rescue
21
- When I write to "features/posts.feature" with:
22
- """
23
- Feature: Posts
24
- @allow-rescue
25
- Scenario: See posts
26
- When I look at the posts
27
- Then I should see the public error page
28
- """
29
- And I write to "features/step_definitions/posts_steps.rb" with:
30
- """
31
- When('I look at the posts') do
32
- visit '/posts'
33
- end
34
-
35
- Then('I should see the public error page') do
36
- expect(page).to have_content "We're sorry, but something went wrong."
37
- end
38
- """
39
- And I run `bundle exec rake db:migrate`
40
- And I run `bundle exec cucumber`
41
- Then the feature run should pass with:
42
- """
43
- 1 scenario (1 passed)
44
- 2 steps (2 passed)
45
- """
46
-
47
- Scenario: Don't allow rescue
48
- When I write to "features/posts.feature" with:
49
- """
50
- Feature: Posts
51
- Scenario: See them
52
- When I look at the posts
53
- """
54
- And I write to "features/step_definitions/posts_steps.rb" with:
55
- """
56
- When('I look at the posts') do
57
- visit '/posts'
58
- end
59
- """
60
- And I run `bundle exec rake db:migrate`
61
- And I run `bundle exec cucumber`
62
- Then it should fail with:
63
- """
64
- 1 scenario (1 failed)
65
- 1 step (1 failed)
66
- """
@@ -1,20 +0,0 @@
1
- Feature: Annotations
2
-
3
- In order to track my development progress
4
- As a developer
5
- I should be able to list annotations in my features
6
-
7
- Scenario: See annotations in feature file
8
- Given I have created a new Rails app with no database and installed cucumber-rails
9
- When I write to "features/products.feature" with:
10
- """
11
- Feature: Products
12
- Scenario: Test a Product
13
- # TODO: When I go to the products page
14
- """
15
- When I run `bundle exec rake notes`
16
- Then it should pass with:
17
- """
18
- features/products.feature:
19
- * [3] [TODO] When I go to the products page
20
- """
@@ -1,132 +0,0 @@
1
- Feature: Capybara Javascript Drivers
2
-
3
- Scenario: Use a particular driver
4
- Given I have created a new Rails app and installed cucumber-rails
5
- And I force selenium to run Firefox in headless mode
6
- When I run `bundle exec rails g scaffold appointment name:string when:datetime`
7
- And I write to "features/create_appointment.feature" with:
8
- """
9
- @javascript
10
- Feature: Create appointments
11
- Scenario: Visit the Constitution on May 17
12
- Given I am on the new appointment page
13
- And I fill in "Norway's constitution" for "Name"
14
- And I select "2015-02-20 15:10:00 UTC" as the "When" date and time
15
- And I press "Create Appointment"
16
- Then I should see "Norway's constitution"
17
- And I should see "2015-02-20 15:10:00 UTC"
18
- """
19
- And I write to "features/create_appointment_steps.rb" with:
20
- """
21
- Given('I am on the new appointment page') do
22
- visit new_appointment_path
23
- end
24
-
25
- When('I fill in {string} for {string}') do |value, field|
26
- fill_in(field, with: value)
27
- end
28
-
29
- When('I press {string}') do |button|
30
- click_button(button)
31
- end
32
-
33
- Then('I should see {string}') do |text|
34
- expect(page).to have_content(text)
35
- end
36
-
37
- When('I select {string} as the {string} date and time') do |datetime, selector|
38
- select_datetime(datetime, from: selector)
39
- end
40
- """
41
- And I run `bundle exec rake db:migrate`
42
- And I run `bundle exec rake cucumber`
43
- Then the feature run should pass with:
44
- """
45
- 1 scenario (1 passed)
46
- 6 steps (6 passed)
47
- """
48
-
49
- Scenario: Mixed DB access
50
- Given I have created a new Rails app and installed cucumber-rails
51
- And I force selenium to run Firefox in headless mode
52
- When I run `bundle exec rails g scaffold appointment name:string when:datetime`
53
- And I write to "features/create_appointment.feature" with:
54
- """
55
- @javascript
56
- Feature: Create appointments
57
- Scenario: Visit the Constitution on May 17
58
- Given a random appointment
59
- And I am viewing the appointment
60
- Then I should see "Random appointment"
61
- """
62
- And I write to "features/step_definitions/create_appointment_steps.rb" with:
63
- """
64
- Given('a random appointment') do
65
- @appointment = Appointment.create!(name: 'Random appointment', when: DateTime.now)
66
- end
67
-
68
- Given('I am viewing the appointment') do
69
- visit appointment_path(@appointment)
70
- end
71
-
72
- Then('I should see {string}') do |text|
73
- expect(page).to have_content(text)
74
- end
75
- """
76
- And I run `bundle exec rake db:migrate`
77
- And I run `bundle exec rake cucumber`
78
- Then the feature run should pass with:
79
- """
80
- 1 scenario (1 passed)
81
- 3 steps (3 passed)
82
- """
83
-
84
- Scenario: Use a particular driver without a DB
85
- Given I have created a new Rails app and installed cucumber-rails without database_cleaner
86
- And I force selenium to run Firefox in headless mode
87
- When I run `bundle exec rails g scaffold appointment name:string when:datetime`
88
- And I write to "features/create_appointment.feature" with:
89
- """
90
- @javascript
91
- Feature: Create appointments
92
- Scenario: Visit the Constitution on May 17
93
- Given I am on the new appointment page
94
- And I fill in "Norway's constitution" for "Name"
95
- And I select "2015-02-20 15:10:00 UTC" as the "When" date and time
96
- And I press "Create Appointment"
97
- Then I should see "Norway's constitution"
98
- And I should see "2015-02-20 15:10:00 UTC"
99
- """
100
- And I write to "features/create_appointment_steps.rb" with:
101
- """
102
- Given('I am on the new appointment page') do
103
- visit new_appointment_path
104
- end
105
-
106
- When('I fill in {string} for {string}') do |value, field|
107
- fill_in(field, with: value)
108
- end
109
-
110
- When('I press {string}') do |button|
111
- click_button(button)
112
- end
113
-
114
- Then('I should see {string}') do |text|
115
- expect(page).to have_content(text)
116
- end
117
-
118
- When('I select {string} as the {string} date and time') do |datetime, selector|
119
- select_datetime(datetime, from: selector)
120
- end
121
- """
122
- And I append to "features/support/env.rb" with:
123
- """
124
- Cucumber::Rails::Database.autorun_database_cleaner = false
125
- """
126
- And I run `bundle exec rake db:migrate`
127
- And I run `bundle exec rake cucumber`
128
- Then the feature run should pass with:
129
- """
130
- 1 scenario (1 passed)
131
- 6 steps (6 passed)
132
- """