solidus_dev_support 1.6.0 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +3 -1
  3. data/.mergify.yml +2 -0
  4. data/.rubocop.yml +1 -1
  5. data/CHANGELOG.md +77 -2
  6. data/Gemfile +0 -1
  7. data/README.md +10 -3
  8. data/Rakefile +10 -8
  9. data/lib/solidus_dev_support/extension.rb +32 -23
  10. data/lib/solidus_dev_support/rake_tasks.rb +16 -4
  11. data/lib/solidus_dev_support/rspec/capybara.rb +20 -0
  12. data/lib/solidus_dev_support/rspec/feature_helper.rb +1 -11
  13. data/lib/solidus_dev_support/rspec/rails_helper.rb +1 -2
  14. data/lib/solidus_dev_support/solidus_command.rb +8 -0
  15. data/lib/solidus_dev_support/templates/extension/.github/stale.yml +4 -4
  16. data/lib/solidus_dev_support/templates/extension/CHANGELOG.md +1 -0
  17. data/lib/solidus_dev_support/templates/extension/README.md +5 -13
  18. data/lib/solidus_dev_support/templates/extension/bin/sandbox.tt +1 -1
  19. data/lib/solidus_dev_support/templates/extension/extension.gemspec.tt +4 -4
  20. data/lib/solidus_dev_support/templates/extension/github_changelog_generator +2 -0
  21. data/lib/solidus_dev_support/templates/extension/lib/%file_name%.rb.tt +1 -0
  22. data/lib/solidus_dev_support/templates/extension/lib/%file_name%/configuration.rb.tt +21 -0
  23. data/lib/solidus_dev_support/templates/extension/lib/%file_name%/{factories.rb.tt → testing_support/factories.rb.tt} +0 -0
  24. data/lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt +5 -0
  25. data/lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/templates/initializer.rb.tt +6 -0
  26. data/lib/solidus_dev_support/templates/extension/rubocop.yml +3 -0
  27. data/lib/solidus_dev_support/templates/extension/spec/spec_helper.rb.tt +2 -2
  28. data/lib/solidus_dev_support/testing_support/factories.rb +27 -0
  29. data/lib/solidus_dev_support/version.rb +5 -1
  30. data/solidus_dev_support.gemspec +5 -4
  31. data/spec/features/create_extension_spec.rb +36 -10
  32. data/spec/lib/extension_spec.rb +56 -20
  33. metadata +44 -24
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 57ffc454eba9fcbba02fb86c44287829fff79b729667b7337e3acf2c7fa09528
4
- data.tar.gz: 1e408fd52a16aa8bafb5a87d8180661bf2e43126a61203916c0bee70b3dbe13d
3
+ metadata.gz: 58949d06dbd9443030d57e6f70894aed059f00684f865d7f0b7b631590adddc8
4
+ data.tar.gz: 2963edee739c9fd30df63e896a1794f5765e2cb6f243e2093d59c9a3458224aa
5
5
  SHA512:
6
- metadata.gz: 754b6f714db2c8436875c69c9af9aabe018f321c5ea12b683657d56e5a1e6595fb7f16f965cf5ea6701bcd5ea6e0f3c10a27fabd4d07f9abc815f9b1499046d2
7
- data.tar.gz: c2f11a1b7bd1983dca96baf5a9f62f61b237ff6402657ba4bba72e91133e3a835887e4f9d15a1a423d8236d035516eddc64dab4ff1ba194c39c3c1ca4216f08f
6
+ metadata.gz: e0a31ee39a78e7738f12a17d1cb0e75fe66e70a6249027f540f28c488ea3a21f826e6631b5233792b6b18f4802cc98dd86fbd6cab4bf39611f18acc8911f5ae8
7
+ data.tar.gz: 620fc9ec7cb78af1bd94ea12da18cb3452db2a6114e81b58d7e7f2bad46bd5744f3f18b6800d06d55b353bc65354fa8d054c5ebcc5e328f8dc1617e5962b8f58
@@ -11,7 +11,9 @@ commands:
11
11
  setup:
12
12
  steps:
13
13
  - checkout
14
- - run: "gem install bundler -v '>=2' --conservative"
14
+ - run:
15
+ command: "gem install bundler -v '>=2' --conservative"
16
+ no_output_timeout: 20m
15
17
 
16
18
  jobs:
17
19
  solidus-master:
@@ -34,6 +34,8 @@ pull_request_rules:
34
34
  - base=master
35
35
  - -label="needs changelog label"
36
36
  - -label=blocked
37
+ - "#approved-reviews-by>=1"
38
+ - -draft
37
39
  actions:
38
40
  merge:
39
41
  method: merge
@@ -36,7 +36,6 @@ Style/RedundantRegexpEscape:
36
36
  Style/SlicingWithRange:
37
37
  Enabled: true
38
38
 
39
-
40
39
  AllCops:
41
40
  TargetRubyVersion: 2.5
42
41
  Exclude:
@@ -44,6 +43,7 @@ AllCops:
44
43
  - "vendor/**/*"
45
44
  # Generated binstubs
46
45
  - bin/rake
46
+ NewCops: enable
47
47
 
48
48
  Style/FrozenStringLiteralComment:
49
49
  Exclude:
@@ -1,8 +1,83 @@
1
1
  # Changelog
2
2
 
3
- ## [Unreleased](https://github.com/solidusio/solidus_dev_support/tree/HEAD)
3
+ ## [2.3.0](https://github.com/solidusio/solidus_dev_support/tree/2.3.0) (2021-01-14)
4
4
 
5
- [Full Changelog](https://github.com/solidusio/solidus_dev_support/compare/v1.5.0...HEAD)
5
+ [Full Changelog](https://github.com/solidusio/solidus_dev_support/compare/v2.2.0...2.3.0)
6
+
7
+ **Implemented enhancements:**
8
+
9
+ - Do not raise if source\_code\_uri is missing in the gemspec [\#163](https://github.com/solidusio/solidus_dev_support/pull/163) ([kennyadsl](https://github.com/kennyadsl))
10
+ - Factory bot fixes for latest Solidus 2.11 release [\#162](https://github.com/solidusio/solidus_dev_support/pull/162) ([elia](https://github.com/elia))
11
+
12
+ **Fixed bugs:**
13
+
14
+ - use rubocop-rspec 2.x [\#161](https://github.com/solidusio/solidus_dev_support/pull/161) ([ccarruitero](https://github.com/ccarruitero))
15
+
16
+ ## [v2.2.0](https://github.com/solidusio/solidus_dev_support/tree/v2.2.0) (2020-11-27)
17
+
18
+ [Full Changelog](https://github.com/solidusio/solidus_dev_support/compare/v2.1.0...v2.2.0)
19
+
20
+ **Implemented enhancements:**
21
+
22
+ - Improve the URL generation for the gemspec and Readme \(defaulting to the solidusio-contrib organization\), consistently use a file-based Changelog [\#159](https://github.com/solidusio/solidus_dev_support/pull/159) ([elia](https://github.com/elia))
23
+ - Configuration Cleanup [\#158](https://github.com/solidusio/solidus_dev_support/pull/158) ([elia](https://github.com/elia))
24
+ - Refer to Solidus wiki page for gem release info [\#157](https://github.com/solidusio/solidus_dev_support/pull/157) ([spaghetticode](https://github.com/spaghetticode))
25
+ - Upgrade to RuboCop 1.0 [\#156](https://github.com/solidusio/solidus_dev_support/pull/156) ([aldesantis](https://github.com/aldesantis))
26
+ - Add a command to display gem's version [\#154](https://github.com/solidusio/solidus_dev_support/pull/154) ([igorbp](https://github.com/igorbp))
27
+
28
+ **Fixed bugs:**
29
+
30
+ - Require "webdrivers" before using it as the default javascript driver [\#152](https://github.com/solidusio/solidus_dev_support/pull/152) ([ccarruitero](https://github.com/ccarruitero))
31
+
32
+ **Merged pull requests:**
33
+
34
+ - Don't let mergify mark a PR as red because it's missing a review [\#153](https://github.com/solidusio/solidus_dev_support/pull/153) ([elia](https://github.com/elia))
35
+
36
+ ## [v2.1.0](https://github.com/solidusio/solidus_dev_support/tree/v2.1.0) (2020-10-02)
37
+
38
+ [Full Changelog](https://github.com/solidusio/solidus_dev_support/compare/v2.0.1...v2.1.0)
39
+
40
+ **Implemented enhancements:**
41
+
42
+ - Add standard github\_changelog\_generator configuration [\#151](https://github.com/solidusio/solidus_dev_support/pull/151) ([aldesantis](https://github.com/aldesantis))
43
+ - Move generated factories to `testing\_support/` [\#150](https://github.com/solidusio/solidus_dev_support/pull/150) ([aldesantis](https://github.com/aldesantis))
44
+ - Add extension configuration boilerplate [\#149](https://github.com/solidusio/solidus_dev_support/pull/149) ([aldesantis](https://github.com/aldesantis))
45
+
46
+ **Fixed bugs:**
47
+
48
+ - Fix `NewCops: Enable` option for RuboCop [\#148](https://github.com/solidusio/solidus_dev_support/pull/148) ([aldesantis](https://github.com/aldesantis))
49
+
50
+ ## [v2.0.1](https://github.com/solidusio/solidus_dev_support/tree/v2.0.1) (2020-09-22)
51
+
52
+ [Full Changelog](https://github.com/solidusio/solidus_dev_support/compare/v2.0.0...v2.0.1)
53
+
54
+ **Fixed bugs:**
55
+
56
+ - Fix gem\_version not being found during extension generation [\#144](https://github.com/solidusio/solidus_dev_support/pull/144) ([aldesantis](https://github.com/aldesantis))
57
+
58
+ ## [v2.0.0](https://github.com/solidusio/solidus_dev_support/tree/v2.0.0) (2020-09-22)
59
+
60
+ [Full Changelog](https://github.com/solidusio/solidus_dev_support/compare/v1.6.0...v2.0.0)
61
+
62
+ **Breaking changes:**
63
+
64
+ - Switch the JS driver to WebDriver/Selenium [\#136](https://github.com/solidusio/solidus_dev_support/pull/136) ([elia](https://github.com/elia))
65
+
66
+ **Implemented enhancements:**
67
+
68
+ - Enable new RuboCop cops automatically [\#143](https://github.com/solidusio/solidus_dev_support/pull/143) ([aldesantis](https://github.com/aldesantis))
69
+ - Don't forcefully close issues via stale-bot [\#139](https://github.com/solidusio/solidus_dev_support/pull/139) ([elia](https://github.com/elia))
70
+ - Add the approximate recommendation for dev-support to the gemspec [\#137](https://github.com/solidusio/solidus_dev_support/pull/137) ([elia](https://github.com/elia))
71
+
72
+ **Fixed bugs:**
73
+
74
+ - fix capybara driver declaration [\#141](https://github.com/solidusio/solidus_dev_support/pull/141) ([ccarruitero](https://github.com/ccarruitero))
75
+ - Bump RuboCop to latest 0.90.0 version [\#138](https://github.com/solidusio/solidus_dev_support/pull/138) ([peterberkenbosch](https://github.com/peterberkenbosch))
76
+ - Fix missing backslash in solidus install command [\#135](https://github.com/solidusio/solidus_dev_support/pull/135) ([nirebu](https://github.com/nirebu))
77
+
78
+ ## [v1.6.0](https://github.com/solidusio/solidus_dev_support/tree/v1.6.0) (2020-08-26)
79
+
80
+ [Full Changelog](https://github.com/solidusio/solidus_dev_support/compare/v1.5.0...v1.6.0)
6
81
 
7
82
  **Implemented enhancements:**
8
83
 
data/Gemfile CHANGED
@@ -15,7 +15,6 @@ gem 'rails', '>0.a'
15
15
 
16
16
  # These gems will be used by the temporary extensions generated by tests
17
17
  group :test do
18
- gem 'factory_bot', '> 4.10.0'
19
18
  gem 'mysql2'
20
19
  gem 'pg'
21
20
  gem 'solidus_auth_devise'
data/README.md CHANGED
@@ -232,9 +232,16 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
232
232
  the tests. You can also run `bin/console` for an interactive prompt that will allow you to
233
233
  experiment.
234
234
 
235
- To install this gem onto your local machine, run `bin/rake install`. To release a new
236
- version, update the version number in `version.rb`, and then run `bin/rake release`, which
237
- will create a git tag for the version, push git commits and tags, and push the `.gem` file to
235
+ To install this gem onto your local machine, run `bin/rake install`.
236
+
237
+ To release a new version:
238
+
239
+ 1. update the version number in `version.rb`
240
+ 2. update the changelog with `bin/rake changelog`
241
+ 3. commit the changes using `Bump SolidusDevSupport to 1.2.3` as the message
242
+ 3. run `bin/rake release`
243
+
244
+ The last command will create a git tag for the version, push git commits and tags, and push the `.gem` file to
238
245
  [rubygems.org](https://rubygems.org).
239
246
 
240
247
  ## Contributing
data/Rakefile CHANGED
@@ -2,14 +2,16 @@
2
2
 
3
3
  require "bundler/gem_tasks"
4
4
 
5
- require 'github_changelog_generator/task'
6
- GitHubChangelogGenerator::RakeTask.new :changelog do |config|
7
- config.user = 'solidusio'
8
- config.project = 'solidus_dev_support'
9
- config.exclude_labels = %w[infrastructure]
10
- config.issues = false
11
- config.base = "#{__dir__}/OLD_CHANGELOG.md"
12
- config.since_tag = 'v1.4.0'
5
+ desc "Update the changelog, specify the version for the unreleased changes appending VERSION=1.2.3 to the command"
6
+ task :changelog do
7
+ require_relative "lib/solidus_dev_support/version"
8
+
9
+ future_release = ENV.fetch("VERSION") {
10
+ warn "Using current version (#{SolidusDevSupport::VERSION}) for unreleased changes, use VERSION=1.2.3 to select a different one."
11
+ SolidusDevSupport::VERSION
12
+ }
13
+
14
+ sh "bundle exec github_changelog_generator --project solidus_dev_support --user solidusio --future-release #{future_release}"
13
15
  end
14
16
 
15
17
  require "rspec/core/rake_task"
@@ -3,6 +3,8 @@
3
3
  require 'thor'
4
4
  require 'pathname'
5
5
 
6
+ require 'solidus_dev_support/version'
7
+
6
8
  module SolidusDevSupport
7
9
  class Extension < Thor
8
10
  include Thor::Actions
@@ -26,6 +28,7 @@ module SolidusDevSupport
26
28
  make_executable bin
27
29
  end
28
30
 
31
+ template 'CHANGELOG.md', "#{path}/CHANGELOG.md"
29
32
  template 'extension.gemspec', "#{path}/#{file_name}.gemspec"
30
33
  template 'Gemfile', "#{path}/Gemfile"
31
34
  template 'gitignore', "#{path}/.gitignore"
@@ -38,6 +41,7 @@ module SolidusDevSupport
38
41
  template 'rspec', "#{path}/.rspec"
39
42
  template 'spec/spec_helper.rb.tt', "#{path}/spec/spec_helper.rb"
40
43
  template 'rubocop.yml', "#{path}/.rubocop.yml"
44
+ template 'github_changelog_generator', "#{path}/.github_changelog_generator"
41
45
  end
42
46
 
43
47
  no_tasks do
@@ -47,27 +51,36 @@ module SolidusDevSupport
47
51
  @file_name = Thor::Util.snake_case(File.basename(path))
48
52
  @file_name = PREFIX + @file_name unless @file_name.start_with?(PREFIX)
49
53
 
50
- @class_name = Thor::Util.camel_case @file_name
54
+ @class_name = Thor::Util.camel_case file_name
51
55
 
52
56
  @root = File.dirname(path)
53
- @path = File.join(@root, @file_name)
57
+ @path = File.join(root, file_name)
58
+
59
+ @repo = existing_repo || default_repo
54
60
 
55
61
  @gemspec = existing_gemspec || default_gemspec
56
62
  end
57
63
 
64
+ attr_reader :root, :path, :file_name, :class_name, :gemspec, :repo
65
+
66
+ private
67
+
58
68
  def gemspec_path
59
69
  @gemspec_path ||= File.join(path, "#{file_name}.gemspec")
60
70
  end
61
71
 
62
72
  def default_gemspec
63
- @default_gemspec ||= Gem::Specification.new(@file_name, '0.0.1') do |gem|
73
+ @default_gemspec ||= Gem::Specification.new(file_name, '0.0.1') do |gem|
64
74
  gem.author = git('config user.name', 'TODO: Write your name')
65
- gem.description = 'TODO: Write a longer description or delete this line.'
66
75
  gem.email = git('config user.email', 'TODO: Write your email address')
67
- gem.homepage = default_homepage
68
- gem.license = 'BSD-3-Clause'
69
- gem.metadata['changelog_uri'] = default_homepage + '/releases'
76
+
70
77
  gem.summary = 'TODO: Write a short summary, because RubyGems requires one.'
78
+ gem.description = 'TODO: Write a longer description or delete this line.'
79
+ gem.license = 'BSD-3-Clause'
80
+
81
+ gem.metadata['homepage_uri'] = gem.homepage = "https://github.com/#{repo}#readme"
82
+ gem.metadata['changelog_uri'] = "https://github.com/#{repo}/blob/master/CHANGELOG.md"
83
+ gem.metadata['source_code_uri'] = "https://github.com/#{repo}"
71
84
  end
72
85
  end
73
86
 
@@ -77,28 +90,26 @@ module SolidusDevSupport
77
90
  @existing_gemspec ||= Gem::Specification.load(gemspec_path).tap do |spec|
78
91
  spec.author ||= default_gemspec.author
79
92
  spec.email ||= default_gemspec.email
80
- spec.homepage ||= default_gemspec.homepage
81
- spec.license ||= default_gemspec.license
82
- spec.metadata['changelog_uri'] ||= default_gemspec.metadata[:changelog_uri]
93
+
83
94
  spec.summary ||= default_gemspec.summary
95
+ spec.license ||= default_gemspec.license
96
+
97
+ spec.homepage ||= default_gemspec.homepage
98
+ spec.metadata['source_code_uri'] ||= default_gemspec.metadata['source_code_uri']
99
+ spec.metadata['changelog_uri'] ||= default_gemspec.metadata['changelog_uri']
100
+ spec.metadata['source_code_uri'] ||= default_gemspec.metadata['source_code_uri']
84
101
  end
85
102
  end
86
103
 
87
- def default_homepage
88
- @default_homepage ||= git(
89
- 'remote get-url origin',
90
- "git@github.com:#{github_user}/#{file_name}.git"
91
- ).sub(
92
- %r{^.*github\.com.([^/]+)/([^/.]+).*$},
93
- 'https://github.com/\1/\2'
94
- )
104
+ def default_repo
105
+ "solidusio-contrib/#{file_name}"
95
106
  end
96
107
 
97
- def github_user
98
- @github_user ||= git('config github.user', '[USERNAME]')
108
+ def existing_repo
109
+ git('remote get-url origin')&.sub(%r{^.*github\.com.([^/]+)/([^/.]+).*$}, '\1/\2')
99
110
  end
100
111
 
101
- def git(command, default)
112
+ def git(command, default = nil)
102
113
  result = `git #{command} 2> /dev/null`.strip
103
114
  result.empty? ? default : result
104
115
  end
@@ -108,8 +119,6 @@ module SolidusDevSupport
108
119
  executable = (path.stat.mode | 0o111)
109
120
  path.chmod(executable)
110
121
  end
111
-
112
- attr_reader :root, :path, :file_name, :class_name, :gemspec
113
122
  end
114
123
 
115
124
  def self.source_root
@@ -76,11 +76,23 @@ module SolidusDevSupport
76
76
  def install_changelog_task
77
77
  require 'github_changelog_generator/task'
78
78
 
79
- user, project = gemspec.homepage.split("/")[3..5]
80
79
  GitHubChangelogGenerator::RakeTask.new(:changelog) do |config|
81
- config.user = user || 'solidus-contrib'
82
- config.project = project || gemspec.name
83
- config.future_release = "v#{gemspec.version}"
80
+ require 'octokit'
81
+ repo = Octokit::Repository.from_url(gemspec.metadata['source_code_uri'] || gemspec.homepage)
82
+
83
+ config.user = repo.owner
84
+ config.project = repo.name
85
+ config.future_release = "v#{ENV['UNRELEASED_VERSION'] || gemspec.version}"
86
+
87
+ rescue Octokit::InvalidRepository
88
+ warn <<~WARN
89
+ It won't be possible to automatically generate the CHANGELOG for this extension because the
90
+ gemspec is missing the `source_code_uri` metadata. Please add this line to the gemspec to
91
+ enable automatic CHANGELOG generation:
92
+
93
+ s.metadata["source_code_uri"] = 'https://github.com/org/repo'
94
+
95
+ WARN
84
96
  end
85
97
  end
86
98
  end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'webdrivers/chromedriver'
4
+
5
+ # Allow to override the initial windows size
6
+ CAPYBARA_WINDOW_SIZE = (ENV['CAPYBARA_WINDOW_SIZE'] || '1920x1080').split('x', 2).map(&:to_i)
7
+
8
+ Capybara.javascript_driver = (ENV['CAPYBARA_JAVASCRIPT_DRIVER'] || "solidus_chrome_headless").to_sym
9
+ Capybara.default_max_wait_time = 10
10
+ Capybara.server = :puma, { Silent: true } # A fix for rspec/rspec-rails#1897
11
+
12
+ Capybara.drivers[:selenium_chrome_headless].tap do |original_driver|
13
+ Capybara.register_driver :solidus_chrome_headless do |app|
14
+ original_driver.call(app).tap do |driver|
15
+ driver.options[:options].args << "--window-size=#{CAPYBARA_WINDOW_SIZE.join(',')}"
16
+ end
17
+ end
18
+ end
19
+
20
+ require 'spree/testing_support/capybara_ext'
@@ -10,17 +10,7 @@
10
10
  require 'solidus_dev_support/rspec/rails_helper'
11
11
 
12
12
  require 'capybara-screenshot/rspec'
13
- require 'capybara/apparition'
14
-
15
- Capybara.javascript_driver = (ENV['CAPYBARA_DRIVER'] || :apparition).to_sym
16
- Capybara.default_max_wait_time = 10
17
- Capybara.server = :puma, { Silent: true } # A fix for rspec/rspec-rails#1897
18
-
19
- Capybara.register_driver :apparition do |app|
20
- Capybara::Apparition::Driver.new(app, window_size: [1920, 1080])
21
- end
22
-
23
- require 'spree/testing_support/capybara_ext'
13
+ require 'solidus_dev_support/rspec/capybara'
24
14
 
25
15
  def dev_support_assets_preload
26
16
  if Rails.application.respond_to?(:precompiled_assets)
@@ -20,10 +20,9 @@ require 'spree/testing_support/factories'
20
20
  require 'spree/testing_support/url_helpers'
21
21
  require 'spree/testing_support/preferences'
22
22
  require 'spree/testing_support/controller_requests'
23
+ require 'solidus_dev_support/testing_support/factories'
23
24
  require 'solidus_dev_support/testing_support/preferences'
24
25
 
25
- FactoryBot.find_definitions
26
-
27
26
  RSpec.configure do |config|
28
27
  config.infer_spec_type_from_file_location!
29
28
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  require 'thor'
4
4
  require 'solidus_dev_support/extension'
5
+ require 'spree/core/version'
5
6
 
6
7
  module SolidusDevSupport
7
8
  class SolidusCommand < Thor
@@ -13,6 +14,13 @@ module SolidusDevSupport
13
14
  desc 'e', 'Manage solidus extensions (shortcut for "extension")'
14
15
  subcommand 'e', Extension
15
16
 
17
+ desc 'version', 'Displays solidus_dev_support version'
18
+ def version
19
+ puts "Solidus version #{Spree.solidus_gem_version}"
20
+ puts "Solidus Dev Support version #{SolidusDevSupport::VERSION}"
21
+ end
22
+ map ['-v', '--version'] => :version
23
+
16
24
  def self.exit_on_failure?
17
25
  true
18
26
  end
@@ -1,17 +1,17 @@
1
1
  # Number of days of inactivity before an issue becomes stale
2
2
  daysUntilStale: 60
3
3
  # Number of days of inactivity before a stale issue is closed
4
- daysUntilClose: 7
4
+ daysUntilClose: false
5
5
  # Issues with these labels will never be considered stale
6
6
  exemptLabels:
7
7
  - pinned
8
8
  - security
9
9
  # Label to use when marking an issue as stale
10
- staleLabel: wontfix
10
+ staleLabel: stale
11
11
  # Comment to post when marking an issue as stale. Set to `false` to disable
12
12
  markComment: >
13
13
  This issue has been automatically marked as stale because it has not had
14
- recent activity. It will be closed if no further activity occurs. Thank you
14
+ recent activity. It might be closed if no further activity occurs. Thank you
15
15
  for your contributions.
16
16
  # Comment to post when closing a stale issue. Set to `false` to disable
17
- closeComment: false
17
+ closeComment: false
@@ -1,13 +1,9 @@
1
1
  # <%= class_name.gsub(/(?<=[^A-Z])([A-Z])/, ' \1') %>
2
2
 
3
- <!-- Replace REPO_ORG and uncomment the following to show badges for CI and coverage. -->
3
+ [![CircleCI](https://circleci.com/gh/<%= repo %>.svg?style=shield)](https://circleci.com/gh/<%= repo %>)
4
+ [![codecov](https://codecov.io/gh/<%= repo %>/branch/master/graph/badge.svg)](https://codecov.io/gh/<%= repo %>)
4
5
 
5
- <!--
6
- [![CircleCI](https://circleci.com/gh/REPO_ORG/<%= file_name %>.svg?style=shield)](https://circleci.com/gh/REPO_ORG/<%= file_name %>)
7
- [![codecov](https://codecov.io/gh/REPO_ORG/<%= file_name %>/branch/master/graph/badge.svg)](https://codecov.io/gh/REPO_ORG/<%= file_name %>)
8
- -->
9
-
10
- [Explain what your extension does.]
6
+ <!-- Explain what your extension does. -->
11
7
 
12
8
  ## Installation
13
9
 
@@ -25,7 +21,7 @@ bin/rails generate <%= file_name %>:install
25
21
 
26
22
  ## Usage
27
23
 
28
- [Explain how to use your extension once it's been installed.]
24
+ <!-- Explain how to use your extension once it's been installed. -->
29
25
 
30
26
  ## Development
31
27
 
@@ -81,11 +77,7 @@ git commit -m "Update the changelog"
81
77
 
82
78
  ### Releasing new versions
83
79
 
84
- Your new extension version can be released using `gem-release` like this:
85
-
86
- ```shell
87
- bundle exec gem bump -v VERSION --tag --push --remote origin && gem release
88
- ```
80
+ Please refer to the dedicated [page](https://github.com/solidusio/solidus/wiki/How-to-release-extensions) on Solidus wiki.
89
81
 
90
82
  ## License
91
83
 
@@ -72,7 +72,7 @@ unbundled bundle exec rails generate spree:install \
72
72
  --user_class=Spree::User \
73
73
  --enforce_available_locales=true \
74
74
  --with-authentication=false \
75
- --payment-method=none
75
+ --payment-method=none \
76
76
  $@
77
77
 
78
78
  unbundled bundle exec rails generate solidus:auth:install
@@ -9,12 +9,12 @@ Gem::Specification.new do |spec|
9
9
  spec.email = '<%= gemspec.email %>'
10
10
 
11
11
  spec.summary = '<%= gemspec.summary %>'
12
- spec.description = '<%= gemspec.description %>'
13
- spec.homepage = '<%= gemspec.homepage %>'
12
+ <% if gemspec.description %>spec.description = '<%= gemspec.description %>'
13
+ <% end %>spec.homepage = '<%= gemspec.homepage %>'
14
14
  spec.license = '<%= gemspec.license %>'
15
15
 
16
16
  spec.metadata['homepage_uri'] = spec.homepage
17
- spec.metadata['source_code_uri'] = '<%= gemspec.homepage %>'
17
+ spec.metadata['source_code_uri'] = '<%= gemspec.metadata["source_code_uri"] %>'
18
18
  spec.metadata['changelog_uri'] = '<%= gemspec.metadata["changelog_uri"] %>'
19
19
 
20
20
  spec.required_ruby_version = Gem::Requirement.new('~> 2.5')
@@ -32,5 +32,5 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency 'solidus_core', ['>= 2.0.0', '< 3']
33
33
  spec.add_dependency 'solidus_support', '~> 0.5'
34
34
 
35
- spec.add_development_dependency 'solidus_dev_support'
35
+ spec.add_development_dependency 'solidus_dev_support', '<%= SolidusDevSupport.gem_version.approximate_recommendation %>'
36
36
  end
@@ -0,0 +1,2 @@
1
+ issues=false
2
+ exclude-labels=infrastructure
@@ -3,5 +3,6 @@
3
3
  require 'solidus_core'
4
4
  require 'solidus_support'
5
5
 
6
+ require '<%=file_name%>/configuration'
6
7
  require '<%=file_name%>/version'
7
8
  require '<%=file_name%>/engine'
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module <%= class_name %>
4
+ class Configuration
5
+ # Define here the settings for this extensions, e.g.:
6
+ #
7
+ # attr_accessor :my_setting
8
+ end
9
+
10
+ class << self
11
+ def configuration
12
+ @configuration ||= Configuration.new
13
+ end
14
+
15
+ alias config configuration
16
+
17
+ def configure
18
+ yield configuration
19
+ end
20
+ end
21
+ end
@@ -4,6 +4,11 @@ module <%= class_name %>
4
4
  module Generators
5
5
  class InstallGenerator < Rails::Generators::Base
6
6
  class_option :auto_run_migrations, type: :boolean, default: false
7
+ source_root File.expand_path('templates', __dir__)
8
+
9
+ def copy_initializer
10
+ template 'initializer.rb', 'config/initializers/<%= file_name %>.rb'
11
+ end
7
12
 
8
13
  def add_javascripts
9
14
  append_file 'vendor/assets/javascripts/spree/frontend/all.js', "//= require spree/frontend/<%= file_name %>\n"
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+
3
+ <%= class_name %>.configure do |config|
4
+ # TODO: Remember to change this with the actual preferences you have implemented!
5
+ # config.sample_preference = 'sample_value'
6
+ end
@@ -1,2 +1,5 @@
1
1
  require:
2
2
  - solidus_dev_support/rubocop
3
+
4
+ AllCops:
5
+ NewCops: disable
@@ -18,8 +18,8 @@ require 'solidus_dev_support/rspec/feature_helper'
18
18
  # in spec/support/ and its subdirectories.
19
19
  Dir["#{__dir__}/support/**/*.rb"].sort.each { |f| require f }
20
20
 
21
- # Requires factories defined in lib/<%= file_name %>/factories.rb
22
- require '<%= file_name %>/factories'
21
+ # Requires factories defined in lib/<%= file_name %>/testing_support/factories.rb
22
+ SolidusDevSupport::TestingSupport::Factories.load_for(<%= class_name %>::Engine)
23
23
 
24
24
  RSpec.configure do |config|
25
25
  config.infer_spec_type_from_file_location!
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spree/testing_support/factories'
4
+ require 'factory_bot'
5
+
6
+ module SolidusDevSupport
7
+ module TestingSupport
8
+ module Factories
9
+ def self.load_for(*engines)
10
+ paths = engines.flat_map do |engine|
11
+ engine.root.glob('lib/**/factories.rb')
12
+ end
13
+
14
+ if Spree::TestingSupport.respond_to? :load_all_factories
15
+ FactoryBot.definition_file_paths.concat(
16
+ paths.map { |path| path.sub(/.rb\z/, '').to_s }
17
+ )
18
+ FactoryBot.reload
19
+ else
20
+ FactoryBot.find_definitions
21
+
22
+ paths.each { |path| require path }
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -1,5 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SolidusDevSupport
4
- VERSION = "1.6.0"
4
+ VERSION = "2.3.0"
5
+
6
+ def self.gem_version
7
+ Gem::Version.new(VERSION)
8
+ end
5
9
  end
@@ -28,23 +28,24 @@ Gem::Specification.new do |spec|
28
28
  spec.executables = files.grep(%r{^exe/}) { |f| File.basename(f) }
29
29
  spec.require_paths = ["lib"]
30
30
 
31
- spec.add_dependency 'apparition', '~> 0.4'
32
31
  spec.add_dependency 'capybara', '~> 3.29'
33
32
  spec.add_dependency 'capybara-screenshot', '~> 1.0'
34
33
  spec.add_dependency 'codecov', '~> 0.2'
35
34
  spec.add_dependency 'database_cleaner', '~> 1.7'
36
- spec.add_dependency 'factory_bot_rails', '~> 5.1'
35
+ spec.add_dependency 'factory_bot', '~> 4.8'
36
+ spec.add_dependency 'factory_bot_rails'
37
37
  spec.add_dependency 'ffaker', '~> 2.13'
38
38
  spec.add_dependency 'gem-release', '~> 2.1'
39
39
  spec.add_dependency 'github_changelog_generator', '~> 1.15'
40
40
  spec.add_dependency 'puma', '~> 4.3'
41
41
  spec.add_dependency 'rspec_junit_formatter'
42
42
  spec.add_dependency 'rspec-rails', '~> 4.0.0.beta3'
43
- spec.add_dependency 'rubocop', '~> 0.87.1'
43
+ spec.add_dependency 'rubocop', '~> 1.0'
44
44
  spec.add_dependency 'rubocop-performance', '~> 1.5'
45
45
  spec.add_dependency 'rubocop-rails', '~> 2.3'
46
- spec.add_dependency 'rubocop-rspec', '~> 1.36'
46
+ spec.add_dependency 'rubocop-rspec', '~> 2.0'
47
47
  spec.add_dependency 'solidus_core', ['>= 2.0', '< 3']
48
+ spec.add_dependency 'webdrivers', '~> 4.4'
48
49
 
49
50
  spec.add_development_dependency 'bundler'
50
51
  spec.add_development_dependency 'rake'
@@ -3,6 +3,7 @@
3
3
  require 'fileutils'
4
4
  require 'open3'
5
5
  require 'spec_helper'
6
+ require 'spree/core/version'
6
7
 
7
8
  RSpec.describe 'Create extension' do
8
9
  include FileUtils
@@ -13,21 +14,26 @@ RSpec.describe 'Create extension' do
13
14
  let(:gemspec_name) { "solidus_#{extension_name}.gemspec" }
14
15
  let(:tmp_path) { Pathname.new(gem_root).join('tmp') }
15
16
  let(:install_path) { tmp_path.join("solidus_#{extension_name}") }
16
-
17
- class CommandFailed < StandardError; end
17
+ let(:command_failed_error) { Class.new(StandardError) }
18
18
 
19
19
  before do
20
20
  rm_rf(install_path)
21
21
  mkdir_p(tmp_path)
22
22
  end
23
23
 
24
+ def step(method_name)
25
+ puts "Step #{method_name}"
26
+ send method_name
27
+ end
28
+
24
29
  it 'checks the create extension process' do
25
- check_solidus_cmd
26
- check_create_extension
27
- check_bundle_install
28
- check_default_task
29
- check_run_specs
30
- check_sandbox
30
+ step :check_solidus_cmd
31
+ step :check_gem_version
32
+ step :check_create_extension
33
+ step :check_bundle_install
34
+ step :check_default_task
35
+ step :check_run_specs
36
+ step :check_sandbox
31
37
  end
32
38
 
33
39
  private
@@ -40,6 +46,21 @@ RSpec.describe 'Create extension' do
40
46
  end
41
47
  end
42
48
 
49
+ def check_gem_version
50
+ gem_version_commands = ['version', '--version', '-v']
51
+ gem_version = SolidusDevSupport::VERSION
52
+ solidus_version = Spree.solidus_gem_version
53
+
54
+ cd(tmp_path) do
55
+ gem_version_commands.each do |gem_version_cmd|
56
+ output = `#{solidus_cmd} #{gem_version_cmd}`
57
+ expect($?).to be_success
58
+ expect(output).to include("Solidus version #{solidus_version}")
59
+ expect(output).to include("Solidus Dev Support version #{gem_version}")
60
+ end
61
+ end
62
+ end
63
+
43
64
  def check_create_extension
44
65
  cd(tmp_path) do
45
66
  output = `#{solidus_cmd} extension #{extension_name}`
@@ -78,7 +99,7 @@ RSpec.describe 'Create extension' do
78
99
  open('Gemfile', 'a') { |f| f.puts "gem 'solidus_dev_support', path: '../../..'" }
79
100
  end
80
101
 
81
- expect { bundle_install }.to raise_error(CommandFailed, /invalid gemspec/)
102
+ expect { bundle_install }.to raise_error(command_failed_error, /invalid gemspec/)
82
103
 
83
104
  # Update gemspec with the required fields
84
105
  gemspec_path = install_path.join(gemspec_name)
@@ -101,11 +122,16 @@ RSpec.describe 'Create extension' do
101
122
  end
102
123
 
103
124
  def check_run_specs
125
+ install_path.join('lib', 'solidus_test_extension', 'testing_support', 'factories.rb').open('a') do |factories_file|
126
+ factories_file.write "\n puts 'loading test_extension factories'"
127
+ end
128
+
104
129
  install_path.join('spec', 'some_spec.rb').write(
105
130
  "require 'spec_helper'\nRSpec.describe 'Some test' do it { expect(true).to be_truthy } end\n"
106
131
  )
107
132
  cd(install_path) do
108
133
  output = sh('bundle exec rspec')
134
+ expect(output).to include('loading test_extension factories')
109
135
  expect(output).to include('1 example, 0 failures')
110
136
  expect(output).to include(ENV['CODECOV_TOKEN'] ? 'Coverage reports upload successfully' : 'Provide a CODECOV_TOKEN environment variable to enable Codecov uploads')
111
137
  end
@@ -139,7 +165,7 @@ RSpec.describe 'Create extension' do
139
165
  warn "$ #{command}"
140
166
  warn output.to_s
141
167
  end
142
- raise(CommandFailed, "command failed: #{command}\n#{output}")
168
+ raise(command_failed_error, "command failed: #{command}\n#{output}")
143
169
  end
144
170
  end
145
171
 
@@ -1,33 +1,69 @@
1
1
  require 'solidus_dev_support/extension'
2
2
 
3
3
  RSpec.describe SolidusDevSupport::Extension do
4
- describe '#default_homepage' do
5
- before do
6
- expect(subject).to receive(:git).with('remote get-url origin', any_args).and_return(remote)
7
- expect(subject).to receive(:github_user).and_return('[USERNAME]')
8
- expect(subject).to receive(:file_name).and_return('solidus_foo_bar')
9
- end
4
+ describe '#path=' do
5
+ specify 'with an existing extension' do
6
+ allow(subject).to receive(:git).with('remote get-url origin', any_args).and_return('git@github.com:some_user/solidus_my_ext.git')
7
+ allow(subject).to receive(:git).with('config user.name', any_args).and_return('John Doe')
8
+ allow(subject).to receive(:git).with('config user.email', any_args).and_return('john.doe@example.com')
10
9
 
11
- context 'with a git ssh-style remote' do
12
- let(:remote) { 'git@github.com:solidusio-contrib/solidus_extension_dev_tools.git' }
10
+ allow(File).to receive(:exist?).with('/foo/bar/solidus_my_ext/solidus_my_ext.gemspec').and_return(true)
11
+ allow(Gem::Specification).to receive(:load).with('/foo/bar/solidus_my_ext/solidus_my_ext.gemspec').and_return(
12
+ Gem::Specification.new('solidus_my_ext', '0.1.1') do |gem|
13
+ gem.author = "Jane Doe"
14
+ gem.email = "jane.doe@example.com"
13
15
 
14
- it 'generates a github home page value' do
15
- expect(subject.default_homepage).to eq('https://github.com/solidusio-contrib/solidus_extension_dev_tools')
16
- end
17
- end
16
+ gem.summary = 'This extension is awesome!'
17
+ gem.license = 'MIT'
18
18
 
19
- context 'with a git https remote' do
20
- let(:remote) { 'https://github.com/solidusio-contrib/solidus_extension_dev_tools.git' }
19
+ gem.homepage = "some_user.github.io/solidus_my_ext"
20
+ gem.metadata['changelog_uri'] = "https://github.com/some_user/solidus_my_ext/releases"
21
+ gem.metadata['source_code_uri'] = "https://github.com/some_user/solidus_my_ext"
22
+ end
23
+ )
21
24
 
22
- it 'generates a github home page value' do
23
- expect(subject.default_homepage).to eq('https://github.com/solidusio-contrib/solidus_extension_dev_tools')
25
+ subject.path = '/foo/bar/solidus_my_ext'
26
+
27
+ aggregate_failures do
28
+ expect(subject.file_name).to eq("solidus_my_ext")
29
+ expect(subject.class_name).to eq("SolidusMyExt")
30
+ expect(subject.root).to eq("/foo/bar")
31
+ expect(subject.path).to eq("/foo/bar/solidus_my_ext")
32
+ expect(subject.repo).to eq("some_user/solidus_my_ext")
33
+ expect(subject.gemspec.author).to eq('Jane Doe')
34
+ expect(subject.gemspec.email).to eq('jane.doe@example.com')
35
+ expect(subject.gemspec.summary).to eq('This extension is awesome!')
36
+ expect(subject.gemspec.license).to eq('MIT')
37
+ expect(subject.gemspec.homepage).to eq("some_user.github.io/solidus_my_ext")
38
+ expect(subject.gemspec.metadata['changelog_uri']).to eq("https://github.com/some_user/solidus_my_ext/releases")
39
+ expect(subject.gemspec.metadata['source_code_uri']).to eq("https://github.com/some_user/solidus_my_ext")
24
40
  end
25
41
  end
26
- end
27
42
 
28
- describe '#default_gemspec' do
29
- it 'has a changelog_uri' do
30
- expect(subject.default_gemspec.metadata['changelog_uri']).to end_with('/releases')
43
+ specify 'when creating a new extension' do
44
+ allow(subject).to receive(:git).with('remote get-url origin', any_args) { |_, default| default }
45
+ allow(subject).to receive(:git).with('config user.name', any_args).and_return('John Doe')
46
+ allow(subject).to receive(:git).with('config user.email', any_args).and_return('john.doe@example.com')
47
+
48
+ allow(Dir).to receive(:pwd).and_return('/foo/bar')
49
+
50
+ subject.path = '/foo/bar/solidus_my_ext'
51
+
52
+ aggregate_failures do
53
+ expect(subject.file_name).to eq("solidus_my_ext")
54
+ expect(subject.class_name).to eq("SolidusMyExt")
55
+ expect(subject.root).to eq("/foo/bar")
56
+ expect(subject.path).to eq("/foo/bar/solidus_my_ext")
57
+ expect(subject.repo).to eq("solidusio-contrib/solidus_my_ext")
58
+ expect(subject.gemspec.author).to eq('John Doe')
59
+ expect(subject.gemspec.email).to eq('john.doe@example.com')
60
+ expect(subject.gemspec.summary).to eq('TODO: Write a short summary, because RubyGems requires one.')
61
+ expect(subject.gemspec.description).to eq('TODO: Write a longer description or delete this line.')
62
+ expect(subject.gemspec.license).to eq('BSD-3-Clause')
63
+ expect(subject.gemspec.homepage).to eq("https://github.com/solidusio-contrib/solidus_my_ext#readme")
64
+ expect(subject.gemspec.metadata['changelog_uri']).to eq("https://github.com/solidusio-contrib/solidus_my_ext/blob/master/CHANGELOG.md")
65
+ expect(subject.gemspec.metadata['source_code_uri']).to eq("https://github.com/solidusio-contrib/solidus_my_ext")
66
+ end
31
67
  end
32
68
  end
33
69
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solidus_dev_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alessandro Desantis
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-08-26 00:00:00.000000000 Z
11
+ date: 2021-01-14 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: apparition
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '0.4'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '0.4'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: capybara
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -81,19 +67,33 @@ dependencies:
81
67
  - !ruby/object:Gem::Version
82
68
  version: '1.7'
83
69
  - !ruby/object:Gem::Dependency
84
- name: factory_bot_rails
70
+ name: factory_bot
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: '5.1'
75
+ version: '4.8'
90
76
  type: :runtime
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: '5.1'
82
+ version: '4.8'
83
+ - !ruby/object:Gem::Dependency
84
+ name: factory_bot_rails
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: ffaker
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -184,14 +184,14 @@ dependencies:
184
184
  requirements:
185
185
  - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: 0.87.1
187
+ version: '1.0'
188
188
  type: :runtime
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
192
  - - "~>"
193
193
  - !ruby/object:Gem::Version
194
- version: 0.87.1
194
+ version: '1.0'
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: rubocop-performance
197
197
  requirement: !ruby/object:Gem::Requirement
@@ -226,14 +226,14 @@ dependencies:
226
226
  requirements:
227
227
  - - "~>"
228
228
  - !ruby/object:Gem::Version
229
- version: '1.36'
229
+ version: '2.0'
230
230
  type: :runtime
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
234
  - - "~>"
235
235
  - !ruby/object:Gem::Version
236
- version: '1.36'
236
+ version: '2.0'
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: solidus_core
239
239
  requirement: !ruby/object:Gem::Requirement
@@ -254,6 +254,20 @@ dependencies:
254
254
  - - "<"
255
255
  - !ruby/object:Gem::Version
256
256
  version: '3'
257
+ - !ruby/object:Gem::Dependency
258
+ name: webdrivers
259
+ requirement: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - "~>"
262
+ - !ruby/object:Gem::Version
263
+ version: '4.4'
264
+ type: :runtime
265
+ prerelease: false
266
+ version_requirements: !ruby/object:Gem::Requirement
267
+ requirements:
268
+ - - "~>"
269
+ - !ruby/object:Gem::Version
270
+ version: '4.4'
257
271
  - !ruby/object:Gem::Dependency
258
272
  name: bundler
259
273
  requirement: !ruby/object:Gem::Requirement
@@ -313,6 +327,7 @@ files:
313
327
  - lib/solidus_dev_support.rb
314
328
  - lib/solidus_dev_support/extension.rb
315
329
  - lib/solidus_dev_support/rake_tasks.rb
330
+ - lib/solidus_dev_support/rspec/capybara.rb
316
331
  - lib/solidus_dev_support/rspec/coverage.rb
317
332
  - lib/solidus_dev_support/rspec/feature_helper.rb
318
333
  - lib/solidus_dev_support/rspec/rails_helper.rb
@@ -322,6 +337,7 @@ files:
322
337
  - lib/solidus_dev_support/solidus_command.rb
323
338
  - lib/solidus_dev_support/templates/extension/.circleci/config.yml
324
339
  - lib/solidus_dev_support/templates/extension/.github/stale.yml
340
+ - lib/solidus_dev_support/templates/extension/CHANGELOG.md
325
341
  - lib/solidus_dev_support/templates/extension/CONTRIBUTING.md
326
342
  - lib/solidus_dev_support/templates/extension/Gemfile
327
343
  - lib/solidus_dev_support/templates/extension/LICENSE
@@ -342,15 +358,19 @@ files:
342
358
  - lib/solidus_dev_support/templates/extension/config/routes.rb
343
359
  - lib/solidus_dev_support/templates/extension/extension.gemspec.tt
344
360
  - lib/solidus_dev_support/templates/extension/gem_release.yml.tt
361
+ - lib/solidus_dev_support/templates/extension/github_changelog_generator
345
362
  - lib/solidus_dev_support/templates/extension/gitignore
346
363
  - lib/solidus_dev_support/templates/extension/lib/%file_name%.rb.tt
364
+ - lib/solidus_dev_support/templates/extension/lib/%file_name%/configuration.rb.tt
347
365
  - lib/solidus_dev_support/templates/extension/lib/%file_name%/engine.rb.tt
348
- - lib/solidus_dev_support/templates/extension/lib/%file_name%/factories.rb.tt
366
+ - lib/solidus_dev_support/templates/extension/lib/%file_name%/testing_support/factories.rb.tt
349
367
  - lib/solidus_dev_support/templates/extension/lib/%file_name%/version.rb.tt
350
368
  - lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/install_generator.rb.tt
369
+ - lib/solidus_dev_support/templates/extension/lib/generators/%file_name%/install/templates/initializer.rb.tt
351
370
  - lib/solidus_dev_support/templates/extension/rspec
352
371
  - lib/solidus_dev_support/templates/extension/rubocop.yml
353
372
  - lib/solidus_dev_support/templates/extension/spec/spec_helper.rb.tt
373
+ - lib/solidus_dev_support/testing_support/factories.rb
354
374
  - lib/solidus_dev_support/testing_support/preferences.rb
355
375
  - lib/solidus_dev_support/version.rb
356
376
  - solidus_dev_support.gemspec