From c13c707a625b11e1c5b0e0a180ce5b6bec177985 Mon Sep 17 00:00:00 2001 From: Alexis Metaireau Date: Thu, 13 Jan 2011 00:32:37 +0100 Subject: [PATCH] Tests for contents.py --- pelican/contents.py | 10 ++++++---- {pelican/tests => tests}/test_contents.py | 2 -- 2 files changed, 6 insertions(+), 6 deletions(-) rename {pelican/tests => tests}/test_contents.py (99%) diff --git a/pelican/contents.py b/pelican/contents.py index b6e71b75..9a70da2c 100644 --- a/pelican/contents.py +++ b/pelican/contents.py @@ -1,4 +1,5 @@ from pelican.utils import slugify, truncate_html_words +from pelican.settings import DEFAULT_CONFIG class Page(object): @@ -22,16 +23,17 @@ class Page(object): if 'AUTHOR' in settings: self.author = settings['AUTHOR'] - default_lang = settings.get('DEFAULT_LANG').lower() + default_lang = settings.get('DEFAULT_LANG', + DEFAULT_CONFIG['DEFAULT_LANG']).lower() if not hasattr(self, 'lang'): self.lang = default_lang self.in_default_lang = (self.lang == default_lang) - if not hasattr(self, 'slug'): + if not hasattr(self, 'slug') and hasattr(self, 'title'): self.slug = slugify(self.title) - if not hasattr(self, 'save_as'): + if not hasattr(self, 'save_as') and hasattr(self, 'slug'): if self.in_default_lang: self.save_as = '%s.html' % self.slug clean_url = '%s/' % self.slug @@ -41,7 +43,7 @@ class Page(object): if settings.get('CLEAN_URLS', False): self.url = clean_url - else: + elif hasattr(self, 'save_as'): self.url = self.save_as if filename: diff --git a/pelican/tests/test_contents.py b/tests/test_contents.py similarity index 99% rename from pelican/tests/test_contents.py rename to tests/test_contents.py index 10d3741a..c1ef27e2 100644 --- a/pelican/tests/test_contents.py +++ b/tests/test_contents.py @@ -23,14 +23,12 @@ class TestPage(TestCase): page = Page('content', metadatas={'title': 'foobar'}) page.check_properties() - def test_slug(self): # if a title is given, it should be used to generate the slug page = Page('content', {'title': 'foobar is foo'}) self.assertEqual(page.slug, 'foobar-is-foo') - def test_defaultlang(self): # if no lang is given, default to the default one page = Page('content')