Merge branch 'master' into glitch-soc/merge-upstream

Conflicts:
	app/models/user.rb

Resolved by adding :default_language to user settings fields
This commit is contained in:
Thibaut Girka
2018-06-21 20:49:57 +02:00
129 changed files with 1169 additions and 576 deletions

View File

@@ -3,6 +3,8 @@
require 'rails_helper'
describe Auth::ConfirmationsController, type: :controller do
render_views
describe 'GET #new' do
it 'returns http success' do
@request.env['devise.mapping'] = Devise.mappings[:user]
@@ -48,4 +50,45 @@ describe Auth::ConfirmationsController, type: :controller do
end
end
end
describe 'GET #finish_signup' do
subject { get :finish_signup }
let(:user) { Fabricate(:user) }
before do
sign_in user, scope: :user
@request.env['devise.mapping'] = Devise.mappings[:user]
end
it 'renders finish_signup' do
is_expected.to render_template :finish_signup
expect(assigns(:user)).to have_attributes id: user.id
end
end
describe 'PATCH #finish_signup' do
subject { patch :finish_signup, params: { user: { email: email }} }
let(:user) { Fabricate(:user) }
before do
sign_in user, scope: :user
@request.env['devise.mapping'] = Devise.mappings[:user]
end
context 'when email is valid' do
let(:email) { 'new_' + user.email }
it 'redirects to root_path' do
is_expected.to redirect_to root_path
end
end
context 'when email is invalid' do
let(:email) { '' }
it 'renders finish_signup' do
is_expected.to render_template :finish_signup
end
end
end
end

View File

@@ -18,12 +18,12 @@ describe Settings::PreferencesController do
describe 'PUT #update' do
it 'updates the user record' do
put :update, params: { user: { locale: 'en', filtered_languages: ['es', 'fr', ''] } }
put :update, params: { user: { locale: 'en', chosen_languages: ['es', 'fr', ''] } }
expect(response).to redirect_to(settings_preferences_path)
user.reload
expect(user.locale).to eq 'en'
expect(user.filtered_languages).to eq ['es', 'fr']
expect(user.chosen_languages).to eq ['es', 'fr']
end
it 'updates user settings' do

View File

@@ -0,0 +1,22 @@
require 'rails_helper'
describe SharesController do
render_views
let(:user) { Fabricate(:user) }
before { sign_in user }
describe 'GTE #show' do
subject(:initial_state_json) { JSON.parse(assigns(:initial_state_json), symbolize_names: true) }
subject(:body_classes) { assigns(:body_classes) }
before { get :show, params: { title: 'test title', text: 'test text', url: 'url1 url2' } }
it 'assigns json' do
expect(response).to have_http_status :ok
expect(initial_state_json[:compose][:text]).to eq 'test title test text url1 url2'
expect(initial_state_json[:meta][:me]).to eq user.account.id.to_s
expect(body_classes).to eq 'modal-layout compose-standalone'
end
end
end