solidus_auth_devise 2.5.8 → 2.5.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cf7ce65d0207be4a726b5b686ecab8dea697d85d4ce3cfb1813a650e50a9d861
4
- data.tar.gz: 9b6873b1c4c6634abc2be1f456a8374f869069ffb748d146a75132d7af7ff252
3
+ metadata.gz: '098ee5c680f5383b31766bff2da29911149036a3972e740cc59731c6d05c5f56'
4
+ data.tar.gz: 7f6c81439ad91719dc0fe4cee7ba2995370f02d87e1f33d7169472241f50f2c7
5
5
  SHA512:
6
- metadata.gz: 3c367084656a1c2b9d5e84acfb70f2c684bce4d53b98ee004f4ace6bd44f989b031cf00367f0c07bc417904bd433390ea25402eeb417098b32da04d820de04eb
7
- data.tar.gz: 253c1677f24a5a34d82a0a9b93eaae6c31c30f6e9a80d562ac8cd5887451ee526b10ea9f8eaa8845e969f4eedd6a56a9450edb1b4f04932be8fbf89a8e143717
6
+ metadata.gz: 6044f99dbef2b8c35bd664d4a9566a7f7dab506678bed597831f5b818c969647ef72bf00e89395875c64a45f2701ac14c3e7c42d583e292e19ea93595c790bc4
7
+ data.tar.gz: 4a44b87bc260b095892bdc0e4477885a7aff5e119c2fac2d3e72c3373db49370b5c05da4d9b824f4d5068df62cbfeaae8d5ff21d27be7550b78f275613785743
data/.circleci/config.yml CHANGED
@@ -15,7 +15,7 @@ jobs:
15
15
  parameters:
16
16
  solidus:
17
17
  type: string
18
- default: master
18
+ default: main
19
19
  db:
20
20
  type: string
21
21
  default: "postgres"
@@ -43,7 +43,7 @@ workflows:
43
43
  - run-specs:
44
44
  name: &name "run-specs-solidus-<< matrix.solidus >>-ruby-<< matrix.ruby >>-db-<< matrix.db >>"
45
45
  matrix:
46
- parameters: { solidus: ["master"], ruby: ["3.2"], db: ["postgres"] }
46
+ parameters: { solidus: ["main"], ruby: ["3.2"], db: ["postgres"] }
47
47
  - run-specs:
48
48
  name: *name
49
49
  matrix:
@@ -54,19 +54,19 @@ workflows:
54
54
  parameters: { solidus: ["older"], ruby: ["3.0"], db: ["sqlite"] }
55
55
  - lint-code
56
56
 
57
- "Weekly run specs against master":
57
+ "Weekly run specs against main":
58
58
  triggers:
59
59
  - schedule:
60
60
  cron: "0 0 * * 4" # every Thursday
61
61
  filters:
62
62
  branches:
63
63
  only:
64
- - master
64
+ - main
65
65
  jobs:
66
66
  - run-specs:
67
67
  name: *name
68
68
  matrix:
69
- parameters: { solidus: ["master"], ruby: ["3.2"], db: ["postgres"] }
69
+ parameters: { solidus: ["main"], ruby: ["3.2"], db: ["postgres"] }
70
70
  - run-specs:
71
71
  name: *name
72
72
  matrix:
data/.rubocop_todo.yml CHANGED
@@ -105,7 +105,7 @@ RSpec/BeforeAfterAll:
105
105
 
106
106
  # Offense count: 5
107
107
  # This cop supports safe autocorrection (--autocorrect).
108
- RSpec/Capybara/CurrentPathExpectation:
108
+ Capybara/CurrentPathExpectation:
109
109
  Exclude:
110
110
  - 'spec/features/admin/sign_in_spec.rb'
111
111
  - 'spec/features/sign_in_spec.rb'
@@ -221,7 +221,6 @@ RSpec/InstanceVariable:
221
221
  - 'spec/controllers/spree/admin/user_passwords_controller_spec.rb'
222
222
  - 'spec/controllers/spree/user_passwords_controller_spec.rb'
223
223
  - 'spec/controllers/spree/user_registrations_controller_spec.rb'
224
- - 'spec/controllers/spree/user_sessions_controller_spec.rb'
225
224
  - 'spec/features/admin/sign_in_spec.rb'
226
225
  - 'spec/features/checkout_spec.rb'
227
226
  - 'spec/features/sign_in_spec.rb'
data/Gemfile CHANGED
@@ -3,14 +3,14 @@
3
3
  source 'https://rubygems.org'
4
4
  git_source(:github) { |repo| "https://github.com/#{repo}.git" }
5
5
 
6
- branch = ENV.fetch('SOLIDUS_BRANCH', 'master')
6
+ branch = ENV.fetch('SOLIDUS_BRANCH', 'main')
7
7
  gem 'solidus', github: 'solidusio/solidus', branch: branch
8
8
  gem 'solidus_backend', github: 'solidusio/solidus', branch: branch
9
9
 
10
10
  # The solidus_frontend gem has been pulled out since v3.2
11
11
  if branch >= 'v3.2'
12
12
  gem 'solidus_frontend'
13
- elsif branch == 'master'
13
+ elsif branch == 'main'
14
14
  gem 'solidus_frontend', github: 'solidusio/solidus_frontend'
15
15
  else
16
16
  gem 'solidus_frontend', github: 'solidusio/solidus', branch: branch
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Solidus Auth Devise
2
2
 
3
3
  [![CircleCI](https://circleci.com/gh/solidusio/solidus_auth_devise.svg?style=shield)](https://circleci.com/gh/solidusio/solidus_auth_devise)
4
- [![codecov](https://codecov.io/gh/solidusio/solidus_auth_devise/branch/master/graph/badge.svg)](https://codecov.io/gh/solidusio/solidus_auth_devise)
4
+ [![codecov](https://codecov.io/gh/solidusio/solidus_auth_devise/branch/main/graph/badge.svg)](https://codecov.io/gh/solidusio/solidus_auth_devise)
5
5
 
6
6
  Provides authentication services for Solidus, using the Devise gem.
7
7
 
data/bin/sandbox CHANGED
@@ -32,8 +32,8 @@ if [ -n "$SOLIDUS_BRANCH" ]
32
32
  then
33
33
  BRANCH=$SOLIDUS_BRANCH
34
34
  else
35
- echo "~~> Use 'export SOLIDUS_BRANCH=[master|v3.2|...]' to control the Solidus branch"
36
- BRANCH="master"
35
+ echo "~~> Use 'export SOLIDUS_BRANCH=[main|v3.2|...]' to control the Solidus branch"
36
+ BRANCH="main"
37
37
  fi
38
38
  echo "~~> Using branch $BRANCH of solidus"
39
39
 
@@ -4,7 +4,7 @@
4
4
  Warden::Manager.after_set_user except: :fetch do |user, auth, _opts|
5
5
  if auth.cookies.signed[:guest_token].present?
6
6
  if user.is_a?(Spree::User)
7
- Spree::Order.incomplete.where(guest_token: auth.cookies.signed[:guest_token], user_id: nil).each do |order|
7
+ Spree::Order.incomplete.where(guest_token: auth.cookies.signed[:guest_token], user_id: nil).find_each do |order|
8
8
  order.associate_user!(user)
9
9
  end
10
10
  end
@@ -35,6 +35,10 @@ class Spree::Admin::UserSessionsController < Devise::SessionsController
35
35
 
36
36
  private
37
37
 
38
+ def signed_in_root_path(_resource)
39
+ spree.admin_path
40
+ end
41
+
38
42
  # NOTE: as soon as this gem stops supporting Solidus 3.1 if-else should be removed and left only include
39
43
  if defined?(::Spree::Admin::SetsUserLanguageLocaleKey)
40
44
  include ::Spree::Admin::SetsUserLanguageLocaleKey
@@ -4,6 +4,8 @@ class Spree::UsersController < Spree::StoreController
4
4
  skip_before_action :set_current_order, only: :show, raise: false
5
5
  prepend_before_action :authorize_actions, only: :new
6
6
 
7
+ def new; end
8
+
7
9
  def show
8
10
  load_object
9
11
  @orders = @user.orders.complete.order('completed_at desc')
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SolidusAuthDevise
4
- VERSION = '2.5.8'
4
+ VERSION = '2.5.9'
5
5
  end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.describe Spree::Admin::UserSessionsController, type: :controller do
4
+ let(:user) { create(:user, password: 'secret') }
5
+
6
+ before { @request.env['devise.mapping'] = Devise.mappings[:spree_user] } # rubocop:disable RSpec/InstanceVariable
7
+
8
+ it "redirects to the admin root after signing in with no stored location" do
9
+ get :new
10
+
11
+ post(:create, params: {
12
+ spree_user: {
13
+ email: user.email,
14
+ password: 'secret'
15
+ },
16
+ })
17
+
18
+ expect(response).to redirect_to spree.admin_path
19
+ end
20
+ end
@@ -3,22 +3,20 @@
3
3
  RSpec.describe Spree::UserSessionsController, type: :controller do
4
4
  let(:user) { create(:user) }
5
5
 
6
- before { @request.env['devise.mapping'] = Devise.mappings[:spree_user] }
6
+ before { @request.env['devise.mapping'] = Devise.mappings[:spree_user] } # rubocop:disable RSpec/InstanceVariable
7
7
 
8
8
  context "#create" do
9
9
  let(:format) { :html }
10
10
  let(:password) { 'secret' }
11
11
 
12
12
  subject do
13
- post(:create,
14
- params: {
15
- spree_user: {
16
- email: user.email,
17
- password: password
18
- },
19
- format: format
20
- }
21
- )
13
+ post(:create, params: {
14
+ spree_user: {
15
+ email: user.email,
16
+ password: password
17
+ },
18
+ format: format
19
+ })
22
20
  end
23
21
 
24
22
  context "when using correct login information" do
@@ -2,7 +2,7 @@
2
2
 
3
3
  RSpec.feature 'Admin - Sign In', type: :feature do
4
4
  background do
5
- @user = create(:user, email: 'email@person.com')
5
+ @user = create(:admin_user, email: 'email@person.com')
6
6
  visit spree.admin_login_path
7
7
  end
8
8
 
@@ -19,7 +19,7 @@ RSpec.feature 'Admin - Sign In', type: :feature do
19
19
  expect(page).to have_text 'Logged in successfully'
20
20
  expect(page).not_to have_text 'Login'
21
21
  expect(page).to have_text 'Logout'
22
- expect(current_path).to eq '/'
22
+ expect(current_path).to eq '/admin/orders'
23
23
  end
24
24
 
25
25
  scenario 'shows validation erros' do
@@ -15,9 +15,28 @@ RSpec.feature 'Admin - Sign Out', type: :feature, js: true do
15
15
  end
16
16
 
17
17
  scenario 'allows a signed in user to logout' do
18
- click_link 'Logout'
18
+ click_logout_link
19
19
  visit spree.admin_login_path
20
20
  expect(page).to have_text 'Login'
21
21
  expect(page).not_to have_text 'Logout'
22
22
  end
23
+
24
+ def click_logout_link
25
+ new_version? ? logout_new_version : logout_old_version
26
+ end
27
+
28
+ def new_version?
29
+ Gem::Requirement.new('>= 4.2').satisfied_by?(Spree.solidus_gem_version)
30
+ end
31
+
32
+ def logout_new_version
33
+ find('details div', text: user.email, wait: 10).click
34
+ within('details') do
35
+ click_link 'Logout'
36
+ end
37
+ end
38
+
39
+ def logout_old_version
40
+ click_link 'Logout'
41
+ end
23
42
  end
@@ -53,7 +53,7 @@ RSpec.describe Spree::User, type: :model do
53
53
  let(:user) { create(:user) }
54
54
 
55
55
  context 'with same email address as previously deleted account' do
56
- it 'will allow users to register later' do
56
+ it 'allows users to register later' do
57
57
  user1 = build(:user)
58
58
  user1.save
59
59
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solidus_auth_devise
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.8
4
+ version: 2.5.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Solidus Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-05-04 00:00:00.000000000 Z
11
+ date: 2024-01-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: deface
@@ -243,6 +243,7 @@ files:
243
243
  - solidus_auth_devise.gemspec
244
244
  - spec/controllers/spree/admin/base_controller_spec.rb
245
245
  - spec/controllers/spree/admin/user_passwords_controller_spec.rb
246
+ - spec/controllers/spree/admin/user_sessions_controller_spec.rb
246
247
  - spec/controllers/spree/base_controller_spec.rb
247
248
  - spec/controllers/spree/checkout_controller_spec.rb
248
249
  - spec/controllers/spree/products_controller_spec.rb
@@ -302,7 +303,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
302
303
  - !ruby/object:Gem::Version
303
304
  version: '0'
304
305
  requirements: []
305
- rubygems_version: 3.3.7
306
+ rubygems_version: 3.4.10
306
307
  signing_key:
307
308
  specification_version: 4
308
309
  summary: Provides authentication and authorization services for use with Solidus by
@@ -310,6 +311,7 @@ summary: Provides authentication and authorization services for use with Solidus
310
311
  test_files:
311
312
  - spec/controllers/spree/admin/base_controller_spec.rb
312
313
  - spec/controllers/spree/admin/user_passwords_controller_spec.rb
314
+ - spec/controllers/spree/admin/user_sessions_controller_spec.rb
313
315
  - spec/controllers/spree/base_controller_spec.rb
314
316
  - spec/controllers/spree/checkout_controller_spec.rb
315
317
  - spec/controllers/spree/products_controller_spec.rb