From 2c4f9b7a73cf5de875b2c77880c040e845960a9a Mon Sep 17 00:00:00 2001 From: Bob Van Landuyt Date: Wed, 30 Aug 2017 10:53:23 +0300 Subject: Check for newlines in different methods on TranslationEntry --- spec/lib/gitlab/i18n/po_linter_spec.rb | 7 +++++++ spec/lib/gitlab/i18n/translation_entry_spec.rb | 27 ++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) (limited to 'spec/lib/gitlab/i18n') diff --git a/spec/lib/gitlab/i18n/po_linter_spec.rb b/spec/lib/gitlab/i18n/po_linter_spec.rb index c40e8ff63bb..0fa4e05c7b1 100644 --- a/spec/lib/gitlab/i18n/po_linter_spec.rb +++ b/spec/lib/gitlab/i18n/po_linter_spec.rb @@ -46,6 +46,13 @@ describe Gitlab::I18n::PoLinter do expect(errors[message_id]).to include(expected_message) end + + it 'raises an error when the plural id is defined over multiple lines' do + message_id = 'multiline plural id' + expected_message = "plural is defined over multiple lines, this breaks some tooling." + + expect(errors[message_id]).to include(expected_message) + end end context 'with an invalid po' do diff --git a/spec/lib/gitlab/i18n/translation_entry_spec.rb b/spec/lib/gitlab/i18n/translation_entry_spec.rb index 7d97942a1d5..e48ba28be0e 100644 --- a/spec/lib/gitlab/i18n/translation_entry_spec.rb +++ b/spec/lib/gitlab/i18n/translation_entry_spec.rb @@ -103,4 +103,31 @@ describe Gitlab::I18n::TranslationEntry do expect(entry).not_to have_singular end end + + describe '#msgid_contains_newlines'do + it 'is true when the msgid is an array' do + data = { msgid: %w(hello world) } + entry = described_class.new(data) + + expect(entry.msgid_contains_newlines?).to be_truthy + end + end + + describe '#plural_id_contains_newlines'do + it 'is true when the msgid is an array' do + data = { plural_id: %w(hello world) } + entry = described_class.new(data) + + expect(entry.plural_id_contains_newlines?).to be_truthy + end + end + + describe '#translations_contain_newlines'do + it 'is true when the msgid is an array' do + data = { msgstr: %w(hello world) } + entry = described_class.new(data) + + expect(entry.translations_contain_newlines?).to be_truthy + end + end end -- cgit v1.2.3