Skip to content

Commit

Permalink
Add tests for case where doc base part doesn't declare locales but pa…
Browse files Browse the repository at this point in the history
…rts do
  • Loading branch information
stucox committed Jun 20, 2016
1 parent d9510ca commit d3b4b44
Show file tree
Hide file tree
Showing 6 changed files with 55 additions and 1 deletion.
34 changes: 34 additions & 0 deletions grow/pods/catalog_holder_test.py
Expand Up @@ -407,6 +407,24 @@ def test_yaml_part_extracted_for_own_locales(self):
u'Localized yaml doc part in localized doc in unlocalized collection in unlocalized pöd',
'ja')

def test_yaml_part_in_unlocalized_doc_extracted_for_own_locales(self):
self.assertExtractedFor(
self.localized_pod,
u'Localized doc part in unlocalized doc in localized collection in localized pöd',
'ja')
self.assertExtractedFor(
self.localized_pod,
u'Localized doc part in unlocalized doc in unlocalized collection in localized pöd',
'ja')
self.assertExtractedFor(
self.unlocalized_pod,
u'Localized doc part in unlocalized doc in localized collection in unlocalized pöd',
'ja')
self.assertExtractedFor(
self.unlocalized_pod,
u'Localized doc part in unlocalized doc in unlocalized collection in unlocalized pöd',
'ja')

def test_multilocale_yaml_part_extracted_for_own_locales(self):
self.assertExtractedFor(
self.localized_pod,
Expand Down Expand Up @@ -452,18 +470,34 @@ def test_yaml_doc_extracted_for_collection_locales(self):
self.unlocalized_pod,
u'Unlocalized yaml doc in localized collection in unlocalized pöd',
'fr')
self.assertExtractedFor(
self.localized_pod,
u'Unlocalized base doc part in localized collection in localized pöd',
'fr')
self.assertExtractedFor(
self.unlocalized_pod,
u'Unlocalized base doc part in localized collection in unlocalized pöd',
'fr')

def test_yaml_doc_extracted_for_podspec_locales(self):
self.assertExtractedFor(
self.localized_pod,
u'Unlocalized yaml doc in unlocalized collection in localized pöd',
'de')
self.assertExtractedFor(
self.localized_pod,
u'Unlocalized base doc part in unlocalized collection in localized pöd',
'de')

def test_yaml_doc_extracted_for_no_locales(self):
self.assertExtractedFor(
self.unlocalized_pod,
u'Unlocalized yaml doc in unlocalized collection in unlocalized pöd',
[])
self.assertExtractedFor(
self.localized_pod,
u'Unlocalized base doc part in unlocalized collection in unlocalized pöd',
'de')

# ------------------------------------------------
# YAML files in /content/ root
Expand Down
2 changes: 1 addition & 1 deletion grow/pods/formats.py
Expand Up @@ -94,7 +94,7 @@ def _validate_non_base_part(self, fields):
# Any additional parts after base part MUST declare one or more locales
# (otherwise there's no point)
if '$locale' not in fields and '$locales' not in fields:
text = 'You must specify either $locale or $locales.'
text = 'You must specify either $locale or $locales for each document part.'
raise BadFormatError(text)
self._validate_fields(fields)

Expand Down
@@ -0,0 +1,5 @@
---
foo@: Unlocalized base doc part in localized collection in localized pöd
---
$locale: ja
foo@: Localized doc part in unlocalized doc in localized collection in localized pöd
@@ -0,0 +1,5 @@
---
foo@: Unlocalized base doc part in unlocalized collection in localized pöd
---
$locale: ja
foo@: Localized doc part in unlocalized doc in unlocalized collection in localized pöd
@@ -0,0 +1,5 @@
---
foo@: Unlocalized base doc part in localized collection in unlocalized pöd
---
$locale: ja
foo@: Localized doc part in unlocalized doc in localized collection in unlocalized pöd
@@ -0,0 +1,5 @@
---
foo@: Unlocalized base doc part in unlocalized collection in unlocalized pöd
---
$locale: ja
foo@: Localized doc part in unlocalized doc in unlocalized collection in unlocalized pöd

0 comments on commit d3b4b44

Please sign in to comment.