devise_token_auth 0.2.0 → 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of devise_token_auth might be problematic. Click here for more details.

Files changed (92) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -2
  3. data/Rakefile +9 -4
  4. data/app/controllers/devise_token_auth/application_controller.rb +5 -7
  5. data/app/controllers/devise_token_auth/concerns/resource_finder.rb +2 -2
  6. data/app/controllers/devise_token_auth/concerns/set_user_by_token.rb +18 -10
  7. data/app/controllers/devise_token_auth/confirmations_controller.rb +2 -2
  8. data/app/controllers/devise_token_auth/omniauth_callbacks_controller.rb +17 -23
  9. data/app/controllers/devise_token_auth/passwords_controller.rb +23 -27
  10. data/app/controllers/devise_token_auth/registrations_controller.rb +17 -15
  11. data/app/controllers/devise_token_auth/sessions_controller.rb +8 -12
  12. data/app/controllers/devise_token_auth/token_validations_controller.rb +3 -3
  13. data/app/controllers/devise_token_auth/unlocks_controller.rb +10 -12
  14. data/app/models/devise_token_auth/concerns/user.rb +27 -36
  15. data/config/initializers/devise.rb +1 -1
  16. data/lib/devise_token_auth.rb +6 -6
  17. data/lib/devise_token_auth/controllers/helpers.rb +14 -4
  18. data/lib/devise_token_auth/engine.rb +11 -13
  19. data/lib/devise_token_auth/errors.rb +1 -1
  20. data/lib/devise_token_auth/rails/routes.rb +29 -29
  21. data/lib/devise_token_auth/url.rb +6 -4
  22. data/lib/devise_token_auth/version.rb +1 -1
  23. data/lib/generators/devise_token_auth/install_generator.rb +52 -39
  24. data/lib/generators/devise_token_auth/install_views_generator.rb +5 -5
  25. data/lib/generators/devise_token_auth/templates/devise_token_auth_create_users.rb.erb +1 -1
  26. data/lib/generators/devise_token_auth/templates/{user.rb → user.rb.erb} +0 -0
  27. data/test/controllers/custom/custom_confirmations_controller_test.rb +3 -1
  28. data/test/controllers/custom/custom_omniauth_callbacks_controller_test.rb +2 -0
  29. data/test/controllers/custom/custom_passwords_controller_test.rb +4 -2
  30. data/test/controllers/custom/custom_registrations_controller_test.rb +6 -8
  31. data/test/controllers/custom/custom_sessions_controller_test.rb +5 -5
  32. data/test/controllers/custom/custom_token_validations_controller_test.rb +3 -3
  33. data/test/controllers/demo_group_controller_test.rb +2 -6
  34. data/test/controllers/demo_mang_controller_test.rb +2 -5
  35. data/test/controllers/demo_user_controller_test.rb +8 -17
  36. data/test/controllers/devise_token_auth/confirmations_controller_test.rb +2 -2
  37. data/test/controllers/devise_token_auth/passwords_controller_test.rb +13 -9
  38. data/test/controllers/devise_token_auth/registrations_controller_test.rb +8 -8
  39. data/test/controllers/devise_token_auth/sessions_controller_test.rb +22 -33
  40. data/test/controllers/devise_token_auth/token_validations_controller_test.rb +2 -6
  41. data/test/controllers/devise_token_auth/unlocks_controller_test.rb +1 -1
  42. data/test/controllers/overrides/confirmations_controller_test.rb +3 -1
  43. data/test/controllers/overrides/omniauth_callbacks_controller_test.rb +3 -1
  44. data/test/controllers/overrides/passwords_controller_test.rb +25 -29
  45. data/test/controllers/overrides/registrations_controller_test.rb +4 -2
  46. data/test/controllers/overrides/sessions_controller_test.rb +4 -4
  47. data/test/controllers/overrides/token_validations_controller_test.rb +3 -3
  48. data/test/dummy/app/controllers/custom/confirmations_controller.rb +0 -2
  49. data/test/dummy/app/controllers/custom/passwords_controller.rb +1 -4
  50. data/test/dummy/app/controllers/custom/registrations_controller.rb +1 -2
  51. data/test/dummy/app/controllers/custom/sessions_controller.rb +1 -3
  52. data/test/dummy/app/controllers/custom/token_validations_controller.rb +1 -3
  53. data/test/dummy/app/controllers/overrides/confirmations_controller.rb +3 -3
  54. data/test/dummy/app/controllers/overrides/omniauth_callbacks_controller.rb +3 -3
  55. data/test/dummy/app/controllers/overrides/passwords_controller.rb +5 -5
  56. data/test/dummy/app/controllers/overrides/registrations_controller.rb +2 -2
  57. data/test/dummy/app/controllers/overrides/sessions_controller.rb +8 -10
  58. data/test/dummy/app/controllers/overrides/token_validations_controller.rb +3 -5
  59. data/test/dummy/app/helpers/application_helper.rb +1027 -1036
  60. data/test/dummy/app/models/scoped_user.rb +2 -2
  61. data/test/dummy/app/models/unregisterable_user.rb +2 -2
  62. data/test/dummy/app/models/user.rb +1 -1
  63. data/test/dummy/config.ru +5 -3
  64. data/test/dummy/config/application.rb +2 -2
  65. data/test/dummy/config/boot.rb +2 -2
  66. data/test/dummy/config/environment.rb +1 -1
  67. data/test/dummy/config/environments/development.rb +3 -3
  68. data/test/dummy/config/environments/test.rb +1 -1
  69. data/test/dummy/config/initializers/omniauth.rb +2 -2
  70. data/test/dummy/config/routes.rb +10 -29
  71. data/test/dummy/db/migrate/20140715061447_devise_token_auth_create_users.rb +8 -8
  72. data/test/dummy/db/migrate/20140715061805_devise_token_auth_create_mangs.rb +7 -7
  73. data/test/dummy/db/migrate/20141222035835_devise_token_auth_create_only_email_users.rb +4 -4
  74. data/test/dummy/db/migrate/20141222053502_devise_token_auth_create_unregisterable_users.rb +7 -7
  75. data/test/dummy/db/migrate/20150708104536_devise_token_auth_create_unconfirmable_users.rb +7 -7
  76. data/test/dummy/db/migrate/20160103235141_devise_token_auth_create_scoped_users.rb +7 -7
  77. data/test/dummy/db/migrate/20160629184441_devise_token_auth_create_lockable_users.rb +6 -6
  78. data/test/dummy/db/schema.rb +2 -60
  79. data/test/factories/users.rb +40 -0
  80. data/test/lib/devise_token_auth/url_test.rb +6 -6
  81. data/test/lib/generators/devise_token_auth/install_generator_test.rb +22 -14
  82. data/test/lib/generators/devise_token_auth/install_generator_with_namespace_test.rb +30 -22
  83. data/test/lib/generators/devise_token_auth/install_views_generator_test.rb +1 -1
  84. data/test/models/user_test.rb +15 -46
  85. data/test/support/controllers/routes.rb +43 -0
  86. data/test/test_helper.rb +12 -12
  87. metadata +8 -14
  88. data/test/dummy/app/models/evil_user.rb +0 -5
  89. data/test/dummy/app/models/nice_user.rb +0 -9
  90. data/test/dummy/db/migrate/20140928231203_devise_token_auth_create_evil_users.rb +0 -66
  91. data/test/dummy/db/migrate/20150409095712_devise_token_auth_create_nice_users.rb +0 -63
  92. data/test/integration/navigation_test.rb +0 -12
@@ -1,7 +1,7 @@
1
1
  class DeviseTokenAuthCreate<%= user_class.pluralize.gsub("::","") %> < ActiveRecord::Migration<%= "[#{Rails::VERSION::STRING[0..2]}]" if Rails::VERSION::MAJOR > 4 %>
2
2
  def change
3
3
  <% table_name = @user_class.pluralize.gsub("::","").underscore %>
4
- create_table(:<%= table_name %>) do |t|
4
+ create_table(:<%= table_name %><%= primary_key_type %>) do |t|
5
5
  ## Required
6
6
  t.string :provider, :null => false, :default => "email"
7
7
  t.string :uid, :null => false, :default => ""
@@ -4,9 +4,11 @@ require 'test_helper'
4
4
 
5
5
  class Custom::ConfirmationsControllerTest < ActionController::TestCase
6
6
  describe Custom::ConfirmationsController do
7
+ include CustomControllersRoutes
8
+
7
9
  before do
8
10
  @redirect_url = Faker::Internet.url
9
- @new_user = users(:unconfirmed_email_user)
11
+ @new_user = create(:user)
10
12
  @new_user.send_confirmation_instructions(redirect_url: @redirect_url)
11
13
  @mail = ActionMailer::Base.deliveries.last
12
14
  @token = @mail.body.match(/confirmation_token=([^&]*)&/)[1]
@@ -4,6 +4,8 @@ require 'test_helper'
4
4
 
5
5
  class Custom::OmniauthCallbacksControllerTest < ActionDispatch::IntegrationTest
6
6
  describe Custom::OmniauthCallbacksController do
7
+ include CustomControllersRoutes
8
+
7
9
  setup do
8
10
  OmniAuth.config.test_mode = true
9
11
  OmniAuth.config.mock_auth[:facebook] = OmniAuth::AuthHash.new(
@@ -4,8 +4,10 @@ require 'test_helper'
4
4
 
5
5
  class Custom::PasswordsControllerTest < ActionController::TestCase
6
6
  describe Custom::PasswordsController do
7
+ include CustomControllersRoutes
8
+
7
9
  before do
8
- @resource = users(:confirmed_email_user)
10
+ @resource = create(:user, :confirmed)
9
11
  @redirect_url = 'http://ng-token-auth.dev'
10
12
  end
11
13
 
@@ -26,7 +28,7 @@ class Custom::PasswordsControllerTest < ActionController::TestCase
26
28
  end
27
29
 
28
30
  test 'yield resource to block on edit success' do
29
- @resource = users(:unconfirmed_email_user)
31
+ @resource = create(:user)
30
32
  @redirect_url = 'http://ng-token-auth.dev'
31
33
 
32
34
  post :create,
@@ -4,16 +4,14 @@ require 'test_helper'
4
4
 
5
5
  class Custom::RegistrationsControllerTest < ActionDispatch::IntegrationTest
6
6
  describe Custom::RegistrationsController do
7
- setup do
8
- @create_params = {
9
- email: Faker::Internet.email,
10
- password: 'secret123',
11
- password_confirmation: 'secret123',
7
+ include CustomControllersRoutes
8
+
9
+ before do
10
+ @create_params = attributes_for(:user,
12
11
  confirm_success_url: Faker::Internet.url,
13
- unpermitted_param: '(x_x)'
14
- }
12
+ unpermitted_param: '(x_x)')
15
13
 
16
- @existing_user = nice_users(:confirmed_email_user)
14
+ @existing_user = create(:user, :confirmed)
17
15
  @auth_headers = @existing_user.create_new_auth_token
18
16
  @client_id = @auth_headers['client']
19
17
 
@@ -4,17 +4,17 @@ require 'test_helper'
4
4
 
5
5
  class Custom::SessionsControllerTest < ActionController::TestCase
6
6
  describe Custom::SessionsController do
7
+ include CustomControllersRoutes
8
+
7
9
  before do
8
- @existing_user = users(:confirmed_email_user)
9
- @existing_user.skip_confirmation!
10
- @existing_user.save!
10
+ @existing_user = create(:user, :confirmed)
11
11
  end
12
12
 
13
13
  test 'yield resource to block on create success' do
14
14
  post :create,
15
15
  params: {
16
16
  email: @existing_user.email,
17
- password: 'secret123'
17
+ password: @existing_user.password
18
18
  }
19
19
  assert @controller.create_block_called?,
20
20
  'create failed to yield resource to provided block'
@@ -31,7 +31,7 @@ class Custom::SessionsControllerTest < ActionController::TestCase
31
31
  test 'render method override' do
32
32
  post :create,
33
33
  params: { email: @existing_user.email,
34
- password: 'secret123' }
34
+ password: @existing_user.password }
35
35
  @data = JSON.parse(response.body)
36
36
  assert_equal @data['custom'], 'foo'
37
37
  end
@@ -4,10 +4,10 @@ require 'test_helper'
4
4
 
5
5
  class Custom::TokenValidationsControllerTest < ActionDispatch::IntegrationTest
6
6
  describe Custom::TokenValidationsController do
7
+ include CustomControllersRoutes
8
+
7
9
  before do
8
- @resource = nice_users(:confirmed_email_user)
9
- @resource.skip_confirmation!
10
- @resource.save!
10
+ @resource = create(:user, :confirmed)
11
11
 
12
12
  @auth_headers = @resource.create_new_auth_token
13
13
 
@@ -13,9 +13,7 @@ class DemoGroupControllerTest < ActionDispatch::IntegrationTest
13
13
  describe 'Token access' do
14
14
  before do
15
15
  # user
16
- @resource = users(:confirmed_email_user)
17
- @resource.skip_confirmation!
18
- @resource.save!
16
+ @resource = create(:user, :confirmed)
19
17
 
20
18
  @resource_auth_headers = @resource.create_new_auth_token
21
19
 
@@ -24,9 +22,7 @@ class DemoGroupControllerTest < ActionDispatch::IntegrationTest
24
22
  @resource_expiry = @resource_auth_headers['expiry']
25
23
 
26
24
  # mang
27
- @mang = mangs(:confirmed_email_user)
28
- @mang.skip_confirmation!
29
- @mang.save!
25
+ @mang = create(:mang_user, :confirmed)
30
26
 
31
27
  @mang_auth_headers = @mang.create_new_auth_token
32
28
 
@@ -12,9 +12,7 @@ class DemoMangControllerTest < ActionDispatch::IntegrationTest
12
12
  describe DemoMangController do
13
13
  describe 'Token access' do
14
14
  before do
15
- @resource = mangs(:confirmed_email_user)
16
- @resource.skip_confirmation!
17
- @resource.save!
15
+ @resource = create(:mang_user, :confirmed)
18
16
 
19
17
  @auth_headers = @resource.create_new_auth_token
20
18
 
@@ -216,7 +214,7 @@ class DemoMangControllerTest < ActionDispatch::IntegrationTest
216
214
  end
217
215
 
218
216
  it 'should not return auth headers for second (batched) requests' do
219
- refute @second_access_token
217
+ assert_equal ' ', @second_access_token
220
218
  end
221
219
  end
222
220
 
@@ -284,4 +282,3 @@ class DemoMangControllerTest < ActionDispatch::IntegrationTest
284
282
  end
285
283
  end
286
284
  end
287
-
@@ -13,9 +13,7 @@ class DemoUserControllerTest < ActionDispatch::IntegrationTest
13
13
  describe DemoUserController do
14
14
  describe 'Token access' do
15
15
  before do
16
- @resource = users(:confirmed_email_user)
17
- @resource.skip_confirmation!
18
- @resource.save!
16
+ @resource = create(:user, :confirmed)
19
17
 
20
18
  @auth_headers = @resource.create_new_auth_token
21
19
 
@@ -217,7 +215,7 @@ class DemoUserControllerTest < ActionDispatch::IntegrationTest
217
215
  end
218
216
 
219
217
  it 'should not return auth headers for second (batched) requests' do
220
- refute @second_access_token
218
+ assert_equal ' ', @second_access_token
221
219
  end
222
220
  end
223
221
 
@@ -440,8 +438,8 @@ class DemoUserControllerTest < ActionDispatch::IntegrationTest
440
438
 
441
439
  # get the oldest token client_id
442
440
  oldest_client_id, = @resource.reload.tokens.min_by do |cid, v|
443
- v[:expiry] || v["expiry"]
444
- end # => [ 'CLIENT_ID', {token: ...} ]
441
+ v[:expiry] || v['expiry']
442
+ end # => [ 'CLIENT_ID', {token: ...} ]
445
443
 
446
444
  # create another token, thereby dropping the oldest token
447
445
  @resource.create_new_auth_token
@@ -457,8 +455,7 @@ class DemoUserControllerTest < ActionDispatch::IntegrationTest
457
455
 
458
456
  describe 'bypass_sign_in' do
459
457
  before do
460
- @resource = users(:unconfirmed_email_user)
461
- @resource.save!
458
+ @resource = create(:user)
462
459
 
463
460
  @auth_headers = @resource.create_new_auth_token
464
461
 
@@ -513,16 +510,14 @@ class DemoUserControllerTest < ActionDispatch::IntegrationTest
513
510
 
514
511
  describe 'enable_standard_devise_support' do
515
512
  before do
516
- @resource = users(:confirmed_email_user)
513
+ @resource = create(:user, :confirmed)
517
514
  @auth_headers = @resource.create_new_auth_token
518
515
  DeviseTokenAuth.enable_standard_devise_support = true
519
516
  end
520
517
 
521
518
  describe 'Existing Warden authentication' do
522
519
  before do
523
- @resource = users(:second_confirmed_email_user)
524
- @resource.skip_confirmation!
525
- @resource.save!
520
+ @resource = create(:user, :confirmed)
526
521
  login_as(@resource, scope: :user)
527
522
 
528
523
  # no auth headers sent, testing that warden authenticates correctly.
@@ -549,8 +544,6 @@ class DemoUserControllerTest < ActionDispatch::IntegrationTest
549
544
  refute_equal @resource, @controller.current_mang
550
545
  end
551
546
 
552
-
553
-
554
547
  end
555
548
 
556
549
  it 'should return success status' do
@@ -576,9 +569,7 @@ class DemoUserControllerTest < ActionDispatch::IntegrationTest
576
569
 
577
570
  describe 'existing Warden authentication with ignored token data' do
578
571
  before do
579
- @resource = users(:second_confirmed_email_user)
580
- @resource.skip_confirmation!
581
- @resource.save!
572
+ @resource = create(:user, :confirmed)
582
573
  login_as(@resource, scope: :user)
583
574
 
584
575
  get '/demo/members_only',
@@ -19,7 +19,7 @@ class DeviseTokenAuth::ConfirmationsControllerTest < ActionController::TestCase
19
19
  describe 'Confirmation' do
20
20
  before do
21
21
  @redirect_url = Faker::Internet.url
22
- @new_user = users(:unconfirmed_email_user)
22
+ @new_user = create(:user)
23
23
  @new_user.send_confirmation_instructions(redirect_url: @redirect_url)
24
24
  mail = ActionMailer::Base.deliveries.last
25
25
  @token, @client_config = token_and_client_config_from(mail.body)
@@ -90,7 +90,7 @@ class DeviseTokenAuth::ConfirmationsControllerTest < ActionController::TestCase
90
90
 
91
91
  before do
92
92
  @config_name = 'altUser'
93
- @new_user = mangs(:unconfirmed_email_user)
93
+ @new_user = create(:mang_user)
94
94
 
95
95
  @new_user.send_confirmation_instructions(client_config: @config_name)
96
96
 
@@ -12,7 +12,7 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
12
12
  describe DeviseTokenAuth::PasswordsController do
13
13
  describe 'Password reset' do
14
14
  before do
15
- @resource = users(:confirmed_email_user)
15
+ @resource = create(:user, :confirmed)
16
16
  @redirect_url = 'http://ng-token-auth.dev'
17
17
  end
18
18
 
@@ -53,8 +53,10 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
53
53
 
54
54
  test 'error message should be returned' do
55
55
  assert @data['errors']
56
- assert_equal @data['errors'],
57
- [I18n.t('devise_token_auth.passwords.missing_redirect_url')]
56
+ assert_equal(
57
+ @data['errors'],
58
+ [I18n.t('devise_token_auth.passwords.missing_redirect_url')]
59
+ )
58
60
  end
59
61
  end
60
62
 
@@ -113,7 +115,9 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
113
115
  end
114
116
 
115
117
  test 'response should contains message' do
116
- assert_equal @data['message'], I18n.t('devise_token_auth.passwords.sended', email: @resource.email)
118
+ assert_equal \
119
+ @data['message'],
120
+ I18n.t('devise_token_auth.passwords.sended', email: @resource.email)
117
121
  end
118
122
 
119
123
  test 'action should send an email' do
@@ -316,7 +320,7 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
316
320
 
317
321
  describe 'Using default_password_reset_url' do
318
322
  before do
319
- @resource = users(:confirmed_email_user)
323
+ @resource = create(:user, :confirmed)
320
324
  @redirect_url = 'http://ng-token-auth.dev'
321
325
 
322
326
  DeviseTokenAuth.default_password_reset_url = @redirect_url
@@ -350,7 +354,7 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
350
354
 
351
355
  describe 'Using redirect_whitelist' do
352
356
  before do
353
- @resource = users(:confirmed_email_user)
357
+ @resource = create(:user, :confirmed)
354
358
  @good_redirect_url = Faker::Internet.url
355
359
  @bad_redirect_url = Faker::Internet.url
356
360
  DeviseTokenAuth.redirect_whitelist = [@good_redirect_url]
@@ -548,7 +552,7 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
548
552
  end
549
553
 
550
554
  before do
551
- @resource = mangs(:confirmed_email_user)
555
+ @resource = create(:mang_user, :confirmed)
552
556
  @redirect_url = 'http://ng-token-auth.dev'
553
557
 
554
558
  post :create, params: { email: @resource.email,
@@ -575,7 +579,7 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
575
579
 
576
580
  describe 'unconfirmed user' do
577
581
  before do
578
- @resource = users(:unconfirmed_email_user)
582
+ @resource = create(:user)
579
583
  @redirect_url = 'http://ng-token-auth.dev'
580
584
 
581
585
  post :create, params: { email: @resource.email,
@@ -627,7 +631,7 @@ class DeviseTokenAuth::PasswordsControllerTest < ActionController::TestCase
627
631
 
628
632
  describe 'alternate user type' do
629
633
  before do
630
- @resource = users(:confirmed_email_user)
634
+ @resource = create(:user, :confirmed)
631
635
  @redirect_url = 'http://ng-token-auth.dev'
632
636
  @config_name = 'altUser'
633
637
 
@@ -376,7 +376,7 @@ class DeviseTokenAuth::RegistrationsControllerTest < ActionDispatch::Integration
376
376
 
377
377
  describe 'Existing users' do
378
378
  before do
379
- @existing_user = users(:confirmed_email_user)
379
+ @existing_user = create(:user, :confirmed)
380
380
 
381
381
  post '/auth',
382
382
  params: { email: @existing_user.email,
@@ -404,7 +404,7 @@ class DeviseTokenAuth::RegistrationsControllerTest < ActionDispatch::Integration
404
404
  describe 'Destroy user account' do
405
405
  describe 'success' do
406
406
  before do
407
- @existing_user = users(:confirmed_email_user)
407
+ @existing_user = create(:user, :confirmed)
408
408
  @auth_headers = @existing_user.create_new_auth_token
409
409
  @client_id = @auth_headers['client']
410
410
 
@@ -451,7 +451,7 @@ class DeviseTokenAuth::RegistrationsControllerTest < ActionDispatch::Integration
451
451
  describe 'Update user account' do
452
452
  describe 'existing user' do
453
453
  before do
454
- @existing_user = users(:confirmed_email_user)
454
+ @existing_user = create(:user, :confirmed)
455
455
  @auth_headers = @existing_user.create_new_auth_token
456
456
  @client_id = @auth_headers['client']
457
457
 
@@ -499,13 +499,13 @@ class DeviseTokenAuth::RegistrationsControllerTest < ActionDispatch::Integration
499
499
  end
500
500
 
501
501
  test 'Supply current password' do
502
- @request_params[:current_password] = 'secret123'
503
- @request_params[:email] = 'new.email@example.com'
502
+ @request_params[:current_password] = @existing_user.password
503
+ @request_params[:email] = @existing_user.email
504
504
 
505
505
  put '/auth', params: @request_params, headers: @auth_headers
506
506
  @data = JSON.parse(response.body)
507
507
  @existing_user.reload
508
- assert_equal @existing_user.email, 'new.email@example.com'
508
+ assert_equal @existing_user.email, @request_params[:email]
509
509
  end
510
510
  end
511
511
 
@@ -668,7 +668,7 @@ class DeviseTokenAuth::RegistrationsControllerTest < ActionDispatch::Integration
668
668
 
669
669
  describe 'invalid user' do
670
670
  before do
671
- @existing_user = users(:confirmed_email_user)
671
+ @existing_user = create(:user, :confirmed)
672
672
  @auth_headers = @existing_user.create_new_auth_token
673
673
  @client_id = @auth_headers['client']
674
674
 
@@ -705,7 +705,7 @@ class DeviseTokenAuth::RegistrationsControllerTest < ActionDispatch::Integration
705
705
 
706
706
  describe 'Ouath user has existing email' do
707
707
  before do
708
- @existing_user = users(:duplicate_email_facebook_user)
708
+ @existing_user = create(:user, :facebook, :confirmed)
709
709
 
710
710
  post '/auth',
711
711
  params: { email: @existing_user.email,
@@ -12,9 +12,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
12
12
  describe DeviseTokenAuth::SessionsController do
13
13
  describe 'Confirmed user' do
14
14
  before do
15
- @existing_user = users(:confirmed_email_user)
16
- @existing_user.skip_confirmation!
17
- @existing_user.save!
15
+ @existing_user = create(:user, :with_nickname, :confirmed)
18
16
  end
19
17
 
20
18
  describe 'success' do
@@ -28,7 +26,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
28
26
  post :create,
29
27
  params: {
30
28
  email: @existing_user.email,
31
- password: 'secret123'
29
+ password: @existing_user.password
32
30
  }
33
31
 
34
32
  @resource = assigns(:resource)
@@ -84,7 +82,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
84
82
 
85
83
  @user_session_params = {
86
84
  email: @existing_user.email,
87
- password: 'secret123'
85
+ password: @existing_user.password
88
86
  }
89
87
  end
90
88
 
@@ -112,7 +110,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
112
110
  end
113
111
 
114
112
  oldest_token, _ = @existing_user.reload.tokens \
115
- .min_by { |cid, v| v[:expiry] || v["expiry"] }
113
+ .min_by { |cid, v| v[:expiry] || v['expiry'] }
116
114
 
117
115
  post :create, params: @user_session_params
118
116
 
@@ -130,7 +128,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
130
128
  before do
131
129
  get :new,
132
130
  params: { nickname: @existing_user.nickname,
133
- password: 'secret123' }
131
+ password: @existing_user.password }
134
132
  @data = JSON.parse(response.body)
135
133
  end
136
134
 
@@ -147,7 +145,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
147
145
  before do
148
146
  request.headers.merge!(
149
147
  'email' => @existing_user.email,
150
- 'password' => 'secret123'
148
+ 'password' => @existing_user.password
151
149
  )
152
150
 
153
151
  head :create
@@ -163,7 +161,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
163
161
  before do
164
162
  post :create,
165
163
  params: { nickname: @existing_user.nickname,
166
- password: 'secret123' }
164
+ password: @existing_user.password }
167
165
  @data = JSON.parse(response.body)
168
166
  end
169
167
 
@@ -275,7 +273,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
275
273
  @resource_class = User
276
274
  @request_params = {
277
275
  email: @existing_user.email.upcase,
278
- password: 'secret123'
276
+ password: @existing_user.password
279
277
  }
280
278
  end
281
279
 
@@ -298,7 +296,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
298
296
  @request_params = {
299
297
  # adding whitespace before and after email
300
298
  email: " #{@existing_user.email} ",
301
- password: 'secret123'
299
+ password: @existing_user.password
302
300
  }
303
301
  end
304
302
 
@@ -318,9 +316,9 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
318
316
 
319
317
  describe 'Unconfirmed user' do
320
318
  before do
321
- @unconfirmed_user = users(:unconfirmed_email_user)
319
+ @unconfirmed_user = create(:user)
322
320
  post :create, params: { email: @unconfirmed_user.email,
323
- password: 'secret123' }
321
+ password: @unconfirmed_user.password }
324
322
  @resource = assigns(:resource)
325
323
  @data = JSON.parse(response.body)
326
324
  end
@@ -341,10 +339,10 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
341
339
  before do
342
340
  @original_duration = Devise.allow_unconfirmed_access_for
343
341
  Devise.allow_unconfirmed_access_for = 3.days
344
- @recent_unconfirmed_user = users(:recent_unconfirmed_email_user)
342
+ @recent_unconfirmed_user = create(:user)
345
343
  post :create,
346
344
  params: { email: @recent_unconfirmed_user.email,
347
- password: 'secret123' }
345
+ password: @recent_unconfirmed_user.password }
348
346
  @resource = assigns(:resource)
349
347
  @data = JSON.parse(response.body)
350
348
  end
@@ -364,20 +362,14 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
364
362
 
365
363
  describe 'Unconfirmed user with expired unconfirmed access' do
366
364
  before do
367
- @original_duration = Devise.allow_unconfirmed_access_for
368
- Devise.allow_unconfirmed_access_for = 3.days
369
- @unconfirmed_user = users(:unconfirmed_email_user)
365
+ @unconfirmed_user = create(:user, :unconfirmed)
370
366
  post :create,
371
367
  params: { email: @unconfirmed_user.email,
372
- password: 'secret123' }
368
+ password: @unconfirmed_user.password }
373
369
  @resource = assigns(:resource)
374
370
  @data = JSON.parse(response.body)
375
371
  end
376
372
 
377
- after do
378
- Devise.allow_unconfirmed_access_for = @original_duration
379
- end
380
-
381
373
  test 'request should fail' do
382
374
  assert_equal 401, response.status
383
375
  end
@@ -415,13 +407,11 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
415
407
  end
416
408
 
417
409
  before do
418
- @existing_user = mangs(:confirmed_email_user)
419
- @existing_user.skip_confirmation!
420
- @existing_user.save!
410
+ @existing_user = create(:mang_user, :confirmed)
421
411
 
422
412
  post :create,
423
413
  params: { email: @existing_user.email,
424
- password: 'secret123' }
414
+ password: @existing_user.password }
425
415
 
426
416
  @resource = assigns(:resource)
427
417
  @data = JSON.parse(response.body)
@@ -446,12 +436,11 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
446
436
  end
447
437
 
448
438
  before do
449
- @existing_user = only_email_users(:user)
450
- @existing_user.save!
439
+ @existing_user = create(:only_email_user)
451
440
 
452
441
  post :create,
453
442
  params: { email: @existing_user.email,
454
- password: 'secret123' }
443
+ password: @existing_user.password }
455
444
 
456
445
  @resource = assigns(:resource)
457
446
  @data = JSON.parse(response.body)
@@ -489,10 +478,10 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
489
478
 
490
479
  describe 'locked user' do
491
480
  before do
492
- @locked_user = lockable_users(:locked_user)
481
+ @locked_user = create(:lockable_user, :locked)
493
482
  post :create,
494
483
  params: { email: @locked_user.email,
495
- password: 'secret123' }
484
+ password: @locked_user.password }
496
485
  @data = JSON.parse(response.body)
497
486
  end
498
487
 
@@ -508,7 +497,7 @@ class DeviseTokenAuth::SessionsControllerTest < ActionController::TestCase
508
497
 
509
498
  describe 'unlocked user with bad password' do
510
499
  before do
511
- @unlocked_user = lockable_users(:unlocked_user)
500
+ @unlocked_user = create(:lockable_user)
512
501
  post :create,
513
502
  params: { email: @unlocked_user.email,
514
503
  password: 'bad-password' }