|
|
@ -95,18 +95,18 @@ RSpec.describe Auth::RegistrationsController, type: :controller do |
|
|
|
before { request.env['devise.mapping'] = Devise.mappings[:user] } |
|
|
|
|
|
|
|
context do |
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
subject do |
|
|
|
Setting.registrations_mode = 'open' |
|
|
|
request.headers['Accept-Language'] = accept_language |
|
|
|
post :create, params: { user: { account_attributes: { username: 'test' }, email: 'test@example.com', password: '12345678', password_confirmation: '12345678', agreement: 'true' } } |
|
|
|
end |
|
|
|
|
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
it 'redirects to setup' do |
|
|
|
subject |
|
|
|
expect(response).to redirect_to auth_setup_path |
|
|
@ -121,18 +121,18 @@ RSpec.describe Auth::RegistrationsController, type: :controller do |
|
|
|
end |
|
|
|
|
|
|
|
context 'when user has not agreed to terms of service' do |
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
subject do |
|
|
|
Setting.registrations_mode = 'open' |
|
|
|
request.headers['Accept-Language'] = accept_language |
|
|
|
post :create, params: { user: { account_attributes: { username: 'test' }, email: 'test@example.com', password: '12345678', password_confirmation: '12345678', agreement: 'false' } } |
|
|
|
end |
|
|
|
|
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
it 'does not create user' do |
|
|
|
subject |
|
|
|
user = User.find_by(email: 'test@example.com') |
|
|
@ -141,18 +141,18 @@ RSpec.describe Auth::RegistrationsController, type: :controller do |
|
|
|
end |
|
|
|
|
|
|
|
context 'approval-based registrations without invite' do |
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
subject do |
|
|
|
Setting.registrations_mode = 'approved' |
|
|
|
request.headers['Accept-Language'] = accept_language |
|
|
|
post :create, params: { user: { account_attributes: { username: 'test' }, email: 'test@example.com', password: '12345678', password_confirmation: '12345678', agreement: 'true' } } |
|
|
|
end |
|
|
|
|
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
it 'redirects to setup' do |
|
|
|
subject |
|
|
|
expect(response).to redirect_to auth_setup_path |
|
|
@ -168,12 +168,6 @@ RSpec.describe Auth::RegistrationsController, type: :controller do |
|
|
|
end |
|
|
|
|
|
|
|
context 'approval-based registrations with expired invite' do |
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
subject do |
|
|
|
Setting.registrations_mode = 'approved' |
|
|
|
request.headers['Accept-Language'] = accept_language |
|
|
@ -181,6 +175,12 @@ RSpec.describe Auth::RegistrationsController, type: :controller do |
|
|
|
post :create, params: { user: { account_attributes: { username: 'test' }, email: 'test@example.com', password: '12345678', password_confirmation: '12345678', invite_code: invite.code, agreement: 'true' } } |
|
|
|
end |
|
|
|
|
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
example.run |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
it 'redirects to setup' do |
|
|
|
subject |
|
|
|
expect(response).to redirect_to auth_setup_path |
|
|
@ -196,14 +196,6 @@ RSpec.describe Auth::RegistrationsController, type: :controller do |
|
|
|
end |
|
|
|
|
|
|
|
context 'approval-based registrations with valid invite and required invite text' do |
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
require_invite_text = Setting.require_invite_text |
|
|
|
example.run |
|
|
|
Setting.require_invite_text = require_invite_text |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
subject do |
|
|
|
inviter = Fabricate(:user, confirmed_at: 2.days.ago) |
|
|
|
Setting.registrations_mode = 'approved' |
|
|
@ -213,6 +205,14 @@ RSpec.describe Auth::RegistrationsController, type: :controller do |
|
|
|
post :create, params: { user: { account_attributes: { username: 'test' }, email: 'test@example.com', password: '12345678', password_confirmation: '12345678', invite_code: invite.code, agreement: 'true' } } |
|
|
|
end |
|
|
|
|
|
|
|
around do |example| |
|
|
|
registrations_mode = Setting.registrations_mode |
|
|
|
require_invite_text = Setting.require_invite_text |
|
|
|
example.run |
|
|
|
Setting.require_invite_text = require_invite_text |
|
|
|
Setting.registrations_mode = registrations_mode |
|
|
|
end |
|
|
|
|
|
|
|
it 'redirects to setup' do |
|
|
|
subject |
|
|
|
expect(response).to redirect_to auth_setup_path |
|
|
|