Fix Rails/I18nLocaleAssignment cop (#24693)

This commit is contained in:
Matt Jankowski 2023-04-30 08:07:03 -04:00 committed by GitHub
parent af824db398
commit d00e45a7d3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 19 additions and 27 deletions

View file

@ -1335,14 +1335,6 @@ Rails/HasManyOrHasOneDependent:
- 'app/models/user.rb'
- 'app/models/web/push_subscription.rb'
# Configuration parameters: Include.
# Include: spec/**/*.rb, test/**/*.rb
Rails/I18nLocaleAssignment:
Exclude:
- 'spec/controllers/auth/registrations_controller_spec.rb'
- 'spec/helpers/application_helper_spec.rb'
- 'spec/requests/localization_spec.rb'
Rails/I18nLocaleTexts:
Exclude:
- 'lib/tasks/mastodon.rake'

View file

@ -104,9 +104,9 @@ RSpec.describe Auth::RegistrationsController, type: :controller do
end
around do |example|
current_locale = I18n.locale
example.run
I18n.locale = current_locale
I18n.with_locale(I18n.locale) do
example.run
end
end
before { request.env['devise.mapping'] = Devise.mappings[:user] }

View file

@ -44,30 +44,28 @@ describe ApplicationHelper do
end
describe 'locale_direction' do
around do |example|
current_locale = I18n.locale
example.run
I18n.locale = current_locale
end
it 'adds rtl body class if locale is Arabic' do
I18n.locale = :ar
expect(helper.locale_direction).to eq 'rtl'
I18n.with_locale(:ar) do
expect(helper.locale_direction).to eq 'rtl'
end
end
it 'adds rtl body class if locale is Farsi' do
I18n.locale = :fa
expect(helper.locale_direction).to eq 'rtl'
I18n.with_locale(:fa) do
expect(helper.locale_direction).to eq 'rtl'
end
end
it 'adds rtl if locale is Hebrew' do
I18n.locale = :he
expect(helper.locale_direction).to eq 'rtl'
I18n.with_locale(:he) do
expect(helper.locale_direction).to eq 'rtl'
end
end
it 'does not add rtl if locale is Thai' do
I18n.locale = :th
expect(helper.locale_direction).to_not eq 'rtl'
I18n.with_locale(:th) do
expect(helper.locale_direction).to_not eq 'rtl'
end
end
end

View file

@ -3,8 +3,10 @@
require 'rails_helper'
describe 'Localization' do
after(:all) do
I18n.locale = I18n.default_locale
around do |example|
I18n.with_locale(I18n.locale) do
example.run
end
end
it 'uses a specific region when provided' do