Skip to content

Commit

Permalink
move i18n tests to test_i18n
Browse files Browse the repository at this point in the history
  • Loading branch information
mcdonc committed Sep 1, 2011
1 parent 845d7ba commit 7282358
Show file tree
Hide file tree
Showing 2 changed files with 114 additions and 95 deletions.
114 changes: 114 additions & 0 deletions pyramid/tests/test_config/test_i18n.py
@@ -0,0 +1,114 @@
import os
import unittest

from pyramid.tests.test_config import dummyfactory

here = os.path.dirname(__file__)
locale = os.path.abspath(
os.path.join(here, '..', 'localeapp', 'locale'))
locale2 = os.path.abspath(
os.path.join(here, '..', 'localeapp', 'locale2'))
locale3 = os.path.abspath(
os.path.join(here, '..', 'localeapp', 'locale3'))

class TestI18NConfiguratorMixin(unittest.TestCase):
def _makeOne(self, *arg, **kw):
from pyramid.config import Configurator
config = Configurator(*arg, **kw)
return config

def test_set_locale_negotiator(self):
from pyramid.interfaces import ILocaleNegotiator
config = self._makeOne(autocommit=True)
def negotiator(request): pass
config.set_locale_negotiator(negotiator)
self.assertEqual(config.registry.getUtility(ILocaleNegotiator),
negotiator)

def test_set_locale_negotiator_dottedname(self):
from pyramid.interfaces import ILocaleNegotiator
config = self._makeOne(autocommit=True)
config.set_locale_negotiator(
'pyramid.tests.test_config.dummyfactory')
self.assertEqual(config.registry.getUtility(ILocaleNegotiator),
dummyfactory)

def test_add_translation_dirs_missing_dir(self):
from pyramid.exceptions import ConfigurationError
config = self._makeOne()
self.assertRaises(ConfigurationError,
config.add_translation_dirs,
'/wont/exist/on/my/system')

def test_add_translation_dirs_no_specs(self):
from pyramid.interfaces import ITranslationDirectories
from pyramid.interfaces import IChameleonTranslate
config = self._makeOne()
config.add_translation_dirs()
self.assertEqual(config.registry.queryUtility(ITranslationDirectories),
None)
self.assertEqual(config.registry.queryUtility(IChameleonTranslate),
None)

def test_add_translation_dirs_asset_spec(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs('pyramid.tests.localeapp:locale')
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale])

def test_add_translation_dirs_asset_spec_existing_translation_dirs(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
directories = ['abc']
config.registry.registerUtility(directories, ITranslationDirectories)
config.add_translation_dirs('pyramid.tests.localeapp:locale')
result = config.registry.getUtility(ITranslationDirectories)
self.assertEqual(result, [locale, 'abc'])

def test_add_translation_dirs_multiple_specs(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs('pyramid.tests.localeapp:locale',
'pyramid.tests.localeapp:locale2')
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale, locale2])

def test_add_translation_dirs_multiple_specs_multiple_calls(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs('pyramid.tests.localeapp:locale',
'pyramid.tests.localeapp:locale2')
config.add_translation_dirs('pyramid.tests.localeapp:locale3')
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale3, locale, locale2])

def test_add_translation_dirs_registers_chameleon_translate(self):
from pyramid.interfaces import IChameleonTranslate
from pyramid.threadlocal import manager
request = DummyRequest()
config = self._makeOne(autocommit=True)
manager.push({'request':request, 'registry':config.registry})
try:
config.add_translation_dirs('pyramid.tests.localeapp:locale')
translate = config.registry.getUtility(IChameleonTranslate)
self.assertEqual(translate('Approve'), u'Approve')
finally:
manager.pop()

def test_add_translation_dirs_abspath(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs(locale)
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale])

class DummyRequest:
subpath = ()
matchdict = None
def __init__(self, environ=None):
if environ is None:
environ = {}
self.environ = environ
self.params = {}
self.cookies = {}
95 changes: 0 additions & 95 deletions pyramid/tests/test_config/test_init.py
Expand Up @@ -4,14 +4,6 @@

import os

here = os.path.dirname(__file__)
locale = os.path.abspath(
os.path.join(here, '..', 'localeapp', 'locale'))
locale2 = os.path.abspath(
os.path.join(here, '..', 'localeapp', 'locale2'))
locale3 = os.path.abspath(
os.path.join(here, '..', 'localeapp', 'locale3'))

from pyramid.tests.test_config import dummy_tween_factory
from pyramid.tests.test_config import dummyfactory
from pyramid.tests.test_config import dummy_include
Expand Down Expand Up @@ -812,92 +804,6 @@ def test_set_default_permission(self):
self.assertEqual(config.registry.getUtility(IDefaultPermission),
'view')

def test_set_locale_negotiator(self):
from pyramid.interfaces import ILocaleNegotiator
config = self._makeOne(autocommit=True)
def negotiator(request): pass
config.set_locale_negotiator(negotiator)
self.assertEqual(config.registry.getUtility(ILocaleNegotiator),
negotiator)

def test_set_locale_negotiator_dottedname(self):
from pyramid.interfaces import ILocaleNegotiator
config = self._makeOne(autocommit=True)
config.set_locale_negotiator(
'pyramid.tests.test_config.dummyfactory')
self.assertEqual(config.registry.getUtility(ILocaleNegotiator),
dummyfactory)

def test_add_translation_dirs_missing_dir(self):
from pyramid.exceptions import ConfigurationError
config = self._makeOne()
self.assertRaises(ConfigurationError,
config.add_translation_dirs,
'/wont/exist/on/my/system')

def test_add_translation_dirs_no_specs(self):
from pyramid.interfaces import ITranslationDirectories
from pyramid.interfaces import IChameleonTranslate
config = self._makeOne()
config.add_translation_dirs()
self.assertEqual(config.registry.queryUtility(ITranslationDirectories),
None)
self.assertEqual(config.registry.queryUtility(IChameleonTranslate),
None)

def test_add_translation_dirs_asset_spec(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs('pyramid.tests.localeapp:locale')
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale])

def test_add_translation_dirs_asset_spec_existing_translation_dirs(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
directories = ['abc']
config.registry.registerUtility(directories, ITranslationDirectories)
config.add_translation_dirs('pyramid.tests.localeapp:locale')
result = config.registry.getUtility(ITranslationDirectories)
self.assertEqual(result, [locale, 'abc'])

def test_add_translation_dirs_multiple_specs(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs('pyramid.tests.localeapp:locale',
'pyramid.tests.localeapp:locale2')
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale, locale2])

def test_add_translation_dirs_multiple_specs_multiple_calls(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs('pyramid.tests.localeapp:locale',
'pyramid.tests.localeapp:locale2')
config.add_translation_dirs('pyramid.tests.localeapp:locale3')
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale3, locale, locale2])

def test_add_translation_dirs_registers_chameleon_translate(self):
from pyramid.interfaces import IChameleonTranslate
from pyramid.threadlocal import manager
request = DummyRequest()
config = self._makeOne(autocommit=True)
manager.push({'request':request, 'registry':config.registry})
try:
config.add_translation_dirs('pyramid.tests.localeapp:locale')
translate = config.registry.getUtility(IChameleonTranslate)
self.assertEqual(translate('Approve'), u'Approve')
finally:
manager.pop()

def test_add_translation_dirs_abspath(self):
from pyramid.interfaces import ITranslationDirectories
config = self._makeOne(autocommit=True)
config.add_translation_dirs(locale)
self.assertEqual(config.registry.getUtility(ITranslationDirectories),
[locale])

def test_add_renderer(self):
from pyramid.interfaces import IRendererFactory
config = self._makeOne(autocommit=True)
Expand Down Expand Up @@ -1559,7 +1465,6 @@ def test_global_registries(self):
global_registries.remove(config2.registry)
self.assertEqual(global_registries.last, config1.registry)


class DummyRequest:
subpath = ()
matchdict = None
Expand Down

0 comments on commit 7282358

Please sign in to comment.