forked from mirrors/catstodon
Replace i18n view spec with helper spec (#24966)
This commit is contained in:
parent
2e1c6e93ad
commit
b84bc2de5d
2 changed files with 35 additions and 37 deletions
35
spec/locales/i18n_spec.rb
Normal file
35
spec/locales/i18n_spec.rb
Normal file
|
@ -0,0 +1,35 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'rails_helper'
|
||||
|
||||
describe 'I18n' do
|
||||
describe 'Pluralizing locale translations' do
|
||||
subject { I18n.t('generic.validation_errors', count: 1) }
|
||||
|
||||
context 'with the `en` locale which has `one` and `other` plural values' do
|
||||
around do |example|
|
||||
I18n.with_locale(:en) do
|
||||
example.run
|
||||
end
|
||||
end
|
||||
|
||||
it 'translates to `en` correctly and without error' do
|
||||
expect { subject }.to_not raise_error
|
||||
expect(subject).to match(/the error below/)
|
||||
end
|
||||
end
|
||||
|
||||
context 'with the `my` locale which has only `other` plural value' do
|
||||
around do |example|
|
||||
I18n.with_locale(:my) do
|
||||
example.run
|
||||
end
|
||||
end
|
||||
|
||||
it 'translates to `my` correctly and without error' do
|
||||
expect { subject }.to_not raise_error
|
||||
expect(subject).to match(/1/)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
|
@ -1,37 +0,0 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'rails_helper'
|
||||
|
||||
describe 'shared/_error_messages.html.haml' do
|
||||
let(:status) { Status.new }
|
||||
|
||||
before { status.errors.add :base, :invalid }
|
||||
|
||||
context 'with a locale that has `one` and `other` plural values' do
|
||||
around do |example|
|
||||
I18n.with_locale(:en) do
|
||||
example.run
|
||||
end
|
||||
end
|
||||
|
||||
it 'renders the view with one error' do
|
||||
render partial: 'shared/error_messages', locals: { object: status }
|
||||
|
||||
expect(rendered).to match(/is invalid/)
|
||||
end
|
||||
end
|
||||
|
||||
context 'with a locale that has only `other` plural value' do
|
||||
around do |example|
|
||||
I18n.with_locale(:my) do
|
||||
example.run
|
||||
end
|
||||
end
|
||||
|
||||
it 'renders the view with one error' do
|
||||
render partial: 'shared/error_messages', locals: { object: status }
|
||||
|
||||
expect(rendered).to match(/is invalid/)
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue