solidus_newsletter 1.0 → 1.1

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 (34) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +35 -0
  3. data/.gitignore +2 -2
  4. data/.rubocop.yml +23 -0
  5. data/.ruby-version +1 -1
  6. data/Gemfile +41 -14
  7. data/README.md +4 -3
  8. data/Rakefile +4 -19
  9. data/app/controllers/spree/admin/newsletters_controller.rb +5 -3
  10. data/app/controllers/spree/newsletters_controller.rb +12 -6
  11. data/app/models/spree/newsletter.rb +3 -1
  12. data/app/overrides/spree/admin/configurations/index/add_newsletter_to_admin_configurations_menu.html.erb.deface +3 -3
  13. data/app/overrides/spree/admin/shared/_configuration_menu/add_newsletter_to_admin_configurations_sidebar_menu.html.erb.deface +1 -1
  14. data/app/views/spree/admin/newsletters/_form.html.erb +4 -4
  15. data/app/views/spree/admin/newsletters/edit.html.erb +8 -2
  16. data/app/views/spree/shared/_newsletter.html.erb +14 -7
  17. data/config/locales/en.yml +2 -1
  18. data/config/locales/es-MX.yml +8 -6
  19. data/config/routes.rb +2 -0
  20. data/db/migrate/20180209175720_add_spree_newsletters_table.rb +1 -1
  21. data/lib/solidus_newsletter/configuration.rb +2 -0
  22. data/lib/solidus_newsletter/engine.rb +12 -10
  23. data/lib/solidus_newsletter/testing_support/factories.rb +8 -0
  24. data/lib/solidus_newsletter/version.rb +3 -1
  25. data/lib/solidus_newsletter.rb +8 -0
  26. data/solidus_newsletter.gemspec +22 -20
  27. data/spec/controllers/spree/admin/newsletters_controller_spec.rb +4 -2
  28. data/spec/controllers/spree/newsletters_controller_spec.rb +38 -7
  29. data/spec/models/spree/newsletter_spec.rb +3 -1
  30. data/spec/spec_helper.rb +21 -35
  31. metadata +44 -136
  32. data/.travis.yml +0 -29
  33. data/Gemfile.lock +0 -410
  34. data/lib/solidus_newsletter/factories.rb +0 -6
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
- describe Spree::Newsletter, type: :model do
5
+ RSpec.describe Spree::Newsletter, type: :model do
4
6
  context 'validations' do
5
7
  it 'validates by default' do
6
8
  expect(build(:newsletter, name: 'User Test', email: 'user@test.com')).to be_valid
data/spec/spec_helper.rb CHANGED
@@ -1,45 +1,31 @@
1
- require 'simplecov'
2
- SimpleCov.start do
3
- add_filter 'spec'
4
- add_group 'Controllers', 'app/controllers'
5
- add_group 'Helpers', 'app/helpers'
6
- add_group 'Overrides', 'app/overrides'
7
- add_group 'Models', 'app/models'
8
- end
1
+ # frozen_string_literal: true
9
2
 
10
- ENV['RAILS_ENV'] ||= 'test'
3
+ # Configure Rails Environment
4
+ ENV['RAILS_ENV'] = 'test'
11
5
 
12
- require File.expand_path('../dummy/config/environment.rb', __FILE__)
6
+ # Run Coverage report
7
+ require 'solidus_dev_support/rspec/coverage'
13
8
 
14
- require 'solidus_frontend'
15
- require 'solidus_backend'
16
- require 'rspec/rails'
9
+ # Create the dummy app if it's still missing.
10
+ dummy_env = "#{__dir__}/dummy/config/environment.rb"
11
+ system 'bin/rake extension:test_app' unless File.exist? dummy_env
12
+ require dummy_env
17
13
 
18
- Dir[Rails.root.join('spec/support/**/*.rb')].sort.each { |file| require file }
14
+ # Requires factories and other useful helpers defined in spree_core.
15
+ require 'solidus_dev_support/rspec/feature_helper'
19
16
 
20
- require 'spree/testing_support/url_helpers'
21
- require 'spree/testing_support/controller_requests'
22
- require 'spree/testing_support/authorization_helpers'
23
- require 'spree/testing_support/preferences'
24
- require 'spree/testing_support/factories'
25
- require 'spree/api/testing_support/helpers'
26
- require 'spree/api/testing_support/setup'
17
+ # Requires supporting ruby files with custom matchers and macros, etc,
18
+ # in spec/support/ and its subdirectories.
19
+ Dir["#{__dir__}/support/**/*.rb"].sort.each { |f| require f }
27
20
 
28
- # Requires factories defined in lib/solidus_newsletter/factories.rb
29
- require 'solidus_newsletter/factories'
21
+ # Requires factories defined in lib/solidus_related_products/testing_support/factories.rb
22
+ SolidusDevSupport::TestingSupport::Factories.load_for(SolidusNewsletter::Engine)
30
23
 
31
24
  RSpec.configure do |config|
32
25
  config.infer_spec_type_from_file_location!
33
- config.infer_base_class_for_anonymous_controllers = false
34
- config.infer_spec_type_from_file_location!
35
- config.use_transactional_fixtures = true
36
-
37
- config.include FactoryBot::Syntax::Methods
38
- config.include Spree::Api::TestingSupport::Helpers, type: :controller
39
- config.extend Spree::Api::TestingSupport::Setup, type: :controller
40
- config.include Spree::TestingSupport::ControllerRequests, type: :controller
41
- config.include Spree::TestingSupport::UrlHelpers
42
- config.extend Spree::TestingSupport::AuthorizationHelpers::Request, type: :request
43
- config.include Spree::TestingSupport::Preferences, type: :controller
44
- config.include Spree::TestingSupport::Preferences, type: :model
26
+ config.use_transactional_fixtures = false
27
+
28
+ if Spree.solidus_gem_version < Gem::Version.new('2.11')
29
+ config.extend Spree::TestingSupport::AuthorizationHelpers::Request, type: :system
30
+ end
45
31
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solidus_newsletter
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.0'
4
+ version: '1.1'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Tapia
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-09 00:00:00.000000000 Z
11
+ date: 2022-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: solidus_core
@@ -16,197 +16,99 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.2'
19
+ version: '2.5'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '3'
22
+ version: '4'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '1.2'
29
+ version: '2.5'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '3'
33
- - !ruby/object:Gem::Dependency
34
- name: solidus_backend
35
- requirement: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - ">="
38
- - !ruby/object:Gem::Version
39
- version: '1.2'
40
- - - "<"
41
- - !ruby/object:Gem::Version
42
- version: '3'
43
- type: :runtime
44
- prerelease: false
45
- version_requirements: !ruby/object:Gem::Requirement
46
- requirements:
47
- - - ">="
48
- - !ruby/object:Gem::Version
49
- version: '1.2'
50
- - - "<"
51
- - !ruby/object:Gem::Version
52
- version: '3'
53
- - !ruby/object:Gem::Dependency
54
- name: solidus_api
55
- requirement: !ruby/object:Gem::Requirement
56
- requirements:
57
- - - ">="
58
- - !ruby/object:Gem::Version
59
- version: '1.2'
60
- - - "<"
61
- - !ruby/object:Gem::Version
62
- version: '3'
63
- type: :runtime
64
- prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - ">="
68
- - !ruby/object:Gem::Version
69
- version: '1.2'
70
- - - "<"
71
- - !ruby/object:Gem::Version
72
- version: '3'
32
+ version: '4'
73
33
  - !ruby/object:Gem::Dependency
74
34
  name: solidus_support
75
- requirement: !ruby/object:Gem::Requirement
76
- requirements:
77
- - - ">="
78
- - !ruby/object:Gem::Version
79
- version: '0'
80
- type: :runtime
81
- prerelease: false
82
- version_requirements: !ruby/object:Gem::Requirement
83
- requirements:
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: '0'
87
- - !ruby/object:Gem::Dependency
88
- name: database_cleaner
89
- requirement: !ruby/object:Gem::Requirement
90
- requirements:
91
- - - "~>"
92
- - !ruby/object:Gem::Version
93
- version: '1.6'
94
- type: :development
95
- prerelease: false
96
- version_requirements: !ruby/object:Gem::Requirement
97
- requirements:
98
- - - "~>"
99
- - !ruby/object:Gem::Version
100
- version: '1.6'
101
- - !ruby/object:Gem::Dependency
102
- name: factory_bot
103
35
  requirement: !ruby/object:Gem::Requirement
104
36
  requirements:
105
37
  - - "~>"
106
38
  - !ruby/object:Gem::Version
107
- version: '4.4'
108
- type: :development
39
+ version: '0.5'
40
+ type: :runtime
109
41
  prerelease: false
110
42
  version_requirements: !ruby/object:Gem::Requirement
111
43
  requirements:
112
44
  - - "~>"
113
45
  - !ruby/object:Gem::Version
114
- version: '4.4'
46
+ version: '0.5'
115
47
  - !ruby/object:Gem::Dependency
116
- name: ffaker
48
+ name: solidus_backend
117
49
  requirement: !ruby/object:Gem::Requirement
118
50
  requirements:
119
51
  - - ">="
120
52
  - !ruby/object:Gem::Version
121
- version: '0'
53
+ version: '2.5'
54
+ - - "<"
55
+ - !ruby/object:Gem::Version
56
+ version: '4'
122
57
  type: :development
123
58
  prerelease: false
124
59
  version_requirements: !ruby/object:Gem::Requirement
125
60
  requirements:
126
61
  - - ">="
127
62
  - !ruby/object:Gem::Version
128
- version: '0'
129
- - !ruby/object:Gem::Dependency
130
- name: rspec-rails
131
- requirement: !ruby/object:Gem::Requirement
132
- requirements:
133
- - - "~>"
134
- - !ruby/object:Gem::Version
135
- version: '3.3'
136
- type: :development
137
- prerelease: false
138
- version_requirements: !ruby/object:Gem::Requirement
139
- requirements:
140
- - - "~>"
63
+ version: '2.5'
64
+ - - "<"
141
65
  - !ruby/object:Gem::Version
142
- version: '3.3'
66
+ version: '4'
143
67
  - !ruby/object:Gem::Dependency
144
- name: simplecov
68
+ name: solidus_dev_support
145
69
  requirement: !ruby/object:Gem::Requirement
146
70
  requirements:
147
71
  - - "~>"
148
72
  - !ruby/object:Gem::Version
149
- version: '0.14'
73
+ version: '2.5'
150
74
  type: :development
151
75
  prerelease: false
152
76
  version_requirements: !ruby/object:Gem::Requirement
153
77
  requirements:
154
78
  - - "~>"
155
79
  - !ruby/object:Gem::Version
156
- version: '0.14'
80
+ version: '2.5'
157
81
  - !ruby/object:Gem::Dependency
158
- name: rspec-activemodel-mocks
82
+ name: solidus_frontend
159
83
  requirement: !ruby/object:Gem::Requirement
160
84
  requirements:
161
85
  - - ">="
162
86
  - !ruby/object:Gem::Version
163
- version: '0'
164
- type: :development
165
- prerelease: false
166
- version_requirements: !ruby/object:Gem::Requirement
167
- requirements:
168
- - - ">="
169
- - !ruby/object:Gem::Version
170
- version: '0'
171
- - !ruby/object:Gem::Dependency
172
- name: webmock
173
- requirement: !ruby/object:Gem::Requirement
174
- requirements:
175
- - - ">="
87
+ version: '2.5'
88
+ - - "<"
176
89
  - !ruby/object:Gem::Version
177
- version: '0'
90
+ version: '4'
178
91
  type: :development
179
92
  prerelease: false
180
93
  version_requirements: !ruby/object:Gem::Requirement
181
94
  requirements:
182
95
  - - ">="
183
96
  - !ruby/object:Gem::Version
184
- version: '0'
185
- - !ruby/object:Gem::Dependency
186
- name: byebug
187
- requirement: !ruby/object:Gem::Requirement
188
- requirements:
189
- - - ">="
190
- - !ruby/object:Gem::Version
191
- version: '0'
192
- type: :development
193
- prerelease: false
194
- version_requirements: !ruby/object:Gem::Requirement
195
- requirements:
196
- - - ">="
97
+ version: '2.5'
98
+ - - "<"
197
99
  - !ruby/object:Gem::Version
198
- version: '0'
100
+ version: '4'
199
101
  description: Adds a newsletter form to the homepage
200
102
  email: jonathan.tapia@magmalabs.io
201
103
  executables: []
202
104
  extensions: []
203
105
  extra_rdoc_files: []
204
106
  files:
107
+ - ".circleci/config.yml"
205
108
  - ".gitignore"
109
+ - ".rubocop.yml"
206
110
  - ".ruby-version"
207
- - ".travis.yml"
208
111
  - Gemfile
209
- - Gemfile.lock
210
112
  - LICENSE
211
113
  - README.md
212
114
  - Rakefile
@@ -228,7 +130,7 @@ files:
228
130
  - lib/solidus_newsletter.rb
229
131
  - lib/solidus_newsletter/configuration.rb
230
132
  - lib/solidus_newsletter/engine.rb
231
- - lib/solidus_newsletter/factories.rb
133
+ - lib/solidus_newsletter/testing_support/factories.rb
232
134
  - lib/solidus_newsletter/version.rb
233
135
  - solidus_newsletter.gemspec
234
136
  - spec/controllers/spree/admin/newsletters_controller_spec.rb
@@ -237,8 +139,11 @@ files:
237
139
  - spec/spec_helper.rb
238
140
  homepage: https://github.com/jtapia/solidus_newsletter
239
141
  licenses: []
240
- metadata: {}
241
- post_install_message:
142
+ metadata:
143
+ homepage_uri: https://github.com/jtapia/solidus_newsletter
144
+ source_code_uri: https://github.com/jtapia/solidus_newsletter
145
+ rubygems_mfa_required: 'true'
146
+ post_install_message:
242
147
  rdoc_options: []
243
148
  require_paths:
244
149
  - lib
@@ -246,7 +151,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
246
151
  requirements:
247
152
  - - ">="
248
153
  - !ruby/object:Gem::Version
249
- version: '0'
154
+ version: '2.5'
250
155
  required_rubygems_version: !ruby/object:Gem::Requirement
251
156
  requirements:
252
157
  - - ">="
@@ -254,9 +159,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
254
159
  version: '0'
255
160
  requirements:
256
161
  - none
257
- rubyforge_project:
258
- rubygems_version: 2.7.3
259
- signing_key:
162
+ rubygems_version: 3.2.3
163
+ signing_key:
260
164
  specification_version: 4
261
165
  summary: Solidus Newsletter extension
262
- test_files: []
166
+ test_files:
167
+ - spec/controllers/spree/admin/newsletters_controller_spec.rb
168
+ - spec/controllers/spree/newsletters_controller_spec.rb
169
+ - spec/models/spree/newsletter_spec.rb
170
+ - spec/spec_helper.rb
data/.travis.yml DELETED
@@ -1,29 +0,0 @@
1
- sudo: false
2
- cache: bundler
3
- language: ruby
4
- rvm:
5
- - 2.3.1
6
- env:
7
- matrix:
8
- - SOLIDUS_BRANCH=v1.0 DB=postgres
9
- - SOLIDUS_BRANCH=v1.1 DB=postgres
10
- - SOLIDUS_BRANCH=v1.2 DB=postgres
11
- - SOLIDUS_BRANCH=v1.3 DB=postgres
12
- - SOLIDUS_BRANCH=v1.4 DB=postgres
13
- - SOLIDUS_BRANCH=v2.0 DB=postgres
14
- - SOLIDUS_BRANCH=v2.1 DB=postgres
15
- - SOLIDUS_BRANCH=v2.2 DB=postgres
16
- - SOLIDUS_BRANCH=v2.3 DB=postgres
17
- - SOLIDUS_BRANCH=v2.4 DB=postgres
18
- - SOLIDUS_BRANCH=master DB=postgres
19
- - SOLIDUS_BRANCH=v1.0 DB=mysql
20
- - SOLIDUS_BRANCH=v1.1 DB=mysql
21
- - SOLIDUS_BRANCH=v1.2 DB=mysql
22
- - SOLIDUS_BRANCH=v1.3 DB=mysql
23
- - SOLIDUS_BRANCH=v1.4 DB=mysql
24
- - SOLIDUS_BRANCH=v2.0 DB=mysql
25
- - SOLIDUS_BRANCH=v2.1 DB=mysql
26
- - SOLIDUS_BRANCH=v2.2 DB=mysql
27
- - SOLIDUS_BRANCH=v2.3 DB=mysql
28
- - SOLIDUS_BRANCH=v2.4 DB=mysql
29
- - SOLIDUS_BRANCH=master DB=mysql