nextgen 0.2.0 → 0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9891f4e3028745d3dfa0d7e225a87e67b499995effab4c41f416bedfbceee804
4
- data.tar.gz: 6a5c2f9f7bf0065263163f67e38720b98bd3dcdb54fe998c43af8e001e4b5e96
3
+ metadata.gz: 1591abd0b5db745b385bf46cd2b7f3322e8e70fa498c227d856e390db9ae0841
4
+ data.tar.gz: 9d1ed374bda103b54f0c79aaf00a7ada704b3ce3e9c87a0037c0ab2e0d702668
5
5
  SHA512:
6
- metadata.gz: c31b1c4ec93cd8c6a99c7ad1e320eace9ac437c023a46b175ed7f5f5b3b234d0af0295f59a2f6d7f3f60a60105be84b25329004b0c5cfb1b8aa912c6ab63661f
7
- data.tar.gz: f11c4657543959b4e7b0da0b567f7852945fa453a53e70f72c42f6cecc7cc8fe9ac451b36897bed4bcaa200567b0fd15989fff700fa9e5af1e5742b4c6cf034e
6
+ metadata.gz: 8430143a55d838a9eeab4ab90a1fb115ec5f1fc3f6b7c0e8780e7bf35f9cdf06e2ba728f86df8a28f697b08b09701ab8b1a8b2b9256e6de17b4981226aef70d0
7
+ data.tar.gz: 8279239e32266c60ed81c39d69116e4cc9693a2faaed087b1fceb026dbb3e882f4efea4386d640c0ccbc4408981f1d0718e686f4b3473b6bc440ba718755277c
data/README.md CHANGED
@@ -97,6 +97,7 @@ Nextgen can install and configure your choice of these recommended gems:
97
97
  - [sidekiq](https://github.com/sidekiq/sidekiq)
98
98
  - [thor](https://github.com/rails/thor)
99
99
  - [tomo](https://github.com/mattbrictson/tomo)
100
+ - [vcr](https://github.com/vcr/vcr)
100
101
 
101
102
  ### Node packages
102
103
 
@@ -131,7 +131,7 @@ tomo:
131
131
 
132
132
  vcr:
133
133
  prompt: "VCR"
134
- description: "Install and configure the vcr gem"
134
+ description: "Install and configure vcr and webmock gems"
135
135
  requires: test_framework
136
136
 
137
137
  rubocop:
@@ -54,16 +54,18 @@ module Nextgen
54
54
  end
55
55
 
56
56
  def copy_test_support_file(file)
57
+ copy_action = file.end_with?(".tt") ? method(:template) : method(:copy_file)
58
+
57
59
  if minitest?
58
60
  create_test_support_directory
59
- copy_file "test/support/#{file}"
61
+ copy_action.call "test/support/#{file}"
60
62
  elsif rspec?
61
63
  empty_directory "spec/support"
62
64
  spec_file_path = "spec/support/#{file}"
63
65
  if Nextgen.template_path.join(spec_file_path).exist?
64
- copy_file spec_file_path
66
+ copy_action.call spec_file_path
65
67
  else
66
- copy_file "test/support/#{file}", spec_file_path
68
+ copy_action.call "test/support/#{file}", spec_file_path.sub(/\.tt$/, "")
67
69
  end
68
70
  end
69
71
  end
@@ -27,6 +27,7 @@ RUBY
27
27
 
28
28
  if File.exist?("test/application_system_test_case.rb")
29
29
  say_git "Configure system tests"
30
+ copy_test_support_file "capybara.rb.tt"
30
31
  copy_file "test/application_system_test_case.rb", force: true
31
32
  end
32
33
 
@@ -1,4 +1,5 @@
1
1
  install_gems "capybara", "selenium-webdriver", group: :test
2
+ copy_test_support_file "capybara.rb.tt"
2
3
  copy_test_support_file "system.rb"
3
4
 
4
5
  copy_file "lib/templates/rspec/system/system_spec.rb"
@@ -6,7 +6,8 @@ plugins << "factory_bot" if gemfile.match?(/^\s*gem ['"]factory_bot/)
6
6
  plugins << "minitest" if minitest?
7
7
  plugins << "performance"
8
8
  plugins << "rails"
9
- install_gems "rubocop", *plugins.map { "rubocop-#{_1}" }, group: :development, require: false
9
+ install_gem("rubocop-rails", version: ">= 2.22.0", group: :development, require: false)
10
+ install_gems(*plugins.map { "rubocop-#{_1}" }, "rubocop", group: :development, require: false)
10
11
  binstub "rubocop"
11
12
 
12
13
  say_git "Generate .rubocop.yml"
@@ -1,2 +1,3 @@
1
1
  install_gems "vcr", "webmock", group: :test
2
- template "test/support/vcr.rb.tt", rspec? ? "spec/support/vcr.rb" : "test/support/vcr.rb"
2
+ copy_test_support_file "vcr.rb.tt"
3
+ copy_test_support_file "webmock.rb"
@@ -1,3 +1,3 @@
1
1
  module Nextgen
2
- VERSION = "0.2.0".freeze
2
+ VERSION = "0.3.0".freeze
3
3
  end
@@ -190,15 +190,6 @@ Rails/RootPathnameMethods:
190
190
  Rails/SkipsModelValidations:
191
191
  Enabled: false
192
192
 
193
- <% if Gem::Version.new(Rails.version) >= Gem::Version.new("7.1.0.beta1") -%>
194
- Rails/UnknownEnv:
195
- Environments:
196
- - development
197
- - test
198
- - production
199
- - local
200
- <% end -%>
201
-
202
193
  Rails/Validation:
203
194
  Enabled: false
204
195
 
@@ -1,9 +1,3 @@
1
- require "capybara/rails"
2
- require "capybara/rspec"
3
-
4
- Capybara.default_max_wait_time = 2
5
- Capybara.disable_animation = true
6
-
7
1
  RSpec.configure do |config|
8
2
  config.before(:each, type: :system) do
9
3
  driven_by :selenium,
@@ -0,0 +1 @@
1
+ require "webmock/rspec"
@@ -1,5 +1,4 @@
1
1
  require "test_helper"
2
- require "capybara/rails"
3
2
 
4
3
  class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
5
4
  driven_by :selenium,
@@ -9,10 +8,4 @@ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
9
8
  options.add_argument("--disable-dev-shm-usage")
10
9
  options.add_argument("--no-sandbox")
11
10
  end
12
-
13
- setup do
14
- Capybara.default_max_wait_time = 2
15
- Capybara.disable_animation = true
16
- Capybara.server = :puma, {Silent: true}
17
- end
18
11
  end
@@ -0,0 +1,12 @@
1
+ require "capybara/rails"
2
+ <% if rspec? -%>
3
+ require "capybara/rspec"
4
+ <% end -%>
5
+
6
+ Capybara.configure do |config|
7
+ config.default_max_wait_time = 2
8
+ config.disable_animation = true
9
+ config.enable_aria_label = true
10
+ config.server = :puma, {Silent: true}
11
+ config.test_id = "data-testid"
12
+ end
@@ -0,0 +1 @@
1
+ require "webmock/minitest"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nextgen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Brictson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-10-13 00:00:00.000000000 Z
11
+ date: 2023-10-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -183,13 +183,16 @@ files:
183
183
  - template/spec/support/mailer.rb
184
184
  - template/spec/support/shoulda.rb
185
185
  - template/spec/support/system.rb
186
+ - template/spec/support/webmock.rb
186
187
  - template/test/application_system_test_case.rb
187
188
  - template/test/helpers/inline_svg_helper_test.rb
189
+ - template/test/support/capybara.rb.tt
188
190
  - template/test/support/factory_bot.rb
189
191
  - template/test/support/mailer.rb
190
192
  - template/test/support/shoulda.rb
191
193
  - template/test/support/vcr.rb.tt
192
194
  - template/test/support/vite.rb
195
+ - template/test/support/webmock.rb
193
196
  homepage: https://github.com/mattbrictson/nextgen
194
197
  licenses:
195
198
  - MIT
@@ -214,7 +217,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
214
217
  - !ruby/object:Gem::Version
215
218
  version: '0'
216
219
  requirements: []
217
- rubygems_version: 3.4.19
220
+ rubygems_version: 3.4.21
218
221
  signing_key:
219
222
  specification_version: 4
220
223
  summary: Generate your next Rails app interactively!