Filter languages with opt out (#3175)

* Remove allowed_languages and add filtered_languages

* Use filtered_languages instead of allowed_languages
This commit is contained in:
Matt Jankowski 2017-05-20 11:32:44 -04:00 committed by Eugen Rochko
parent 2e112e2406
commit 8f4b7c1820
21 changed files with 30 additions and 41 deletions

View file

@ -3,7 +3,7 @@ require 'rails_helper'
describe Settings::PreferencesController do
render_views
let(:user) { Fabricate(:user, allowed_languages: []) }
let(:user) { Fabricate(:user, filtered_languages: []) }
before do
sign_in user, scope: :user
@ -18,12 +18,12 @@ describe Settings::PreferencesController do
describe 'PUT #update' do
it 'updates the user record' do
put :update, params: { user: { locale: 'en', allowed_languages: ['es', 'fr', ''] } }
put :update, params: { user: { locale: 'en', filtered_languages: ['es', 'fr', ''] } }
expect(response).to redirect_to(settings_preferences_path)
user.reload
expect(user.locale).to eq 'en'
expect(user.allowed_languages).to eq ['es', 'fr']
expect(user.filtered_languages).to eq ['es', 'fr']
end
it 'updates user settings' do

View file

@ -512,7 +512,7 @@ RSpec.describe Status, type: :model do
context 'with language preferences' do
it 'excludes statuses in languages not allowed by the account user' do
user = Fabricate(:user, allowed_languages: [:en, :es])
user = Fabricate(:user, filtered_languages: [:fr])
@account.update(user: user)
en_status = Fabricate(:status, language: 'en')
es_status = Fabricate(:status, language: 'es')
@ -525,7 +525,7 @@ RSpec.describe Status, type: :model do
end
it 'includes all languages when user does not have a setting' do
user = Fabricate(:user, allowed_languages: [])
user = Fabricate(:user, filtered_languages: [])
@account.update(user: user)
en_status = Fabricate(:status, language: 'en')

View file

@ -24,9 +24,9 @@ RSpec.describe User, type: :model do
end
it 'cleans out empty string from languages' do
user = Fabricate.build(:user, allowed_languages: [''])
user = Fabricate.build(:user, filtered_languages: [''])
user.valid?
expect(user.allowed_languages).to eq []
expect(user.filtered_languages).to eq []
end
end