M Gemfile.lock => Gemfile.lock +1 -1
@@ 329,7 329,7 @@ GEM
httplog (1.6.2)
rack (>= 2.0)
rainbow (>= 2.0.0)
- i18n (1.12.0)
+ i18n (1.13.0)
concurrent-ruby (~> 1.0)
i18n-tasks (1.0.12)
activesupport (>= 4.0.2)
A spec/views/shared/_error_messages.html.haml_spec.rb => spec/views/shared/_error_messages.html.haml_spec.rb +37 -0
@@ 0,0 1,37 @@
+# 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