diff options
author | Jason Gerard DeRose <jderose@redhat.com> | 2009-01-04 00:46:21 -0700 |
---|---|---|
committer | Jason Gerard DeRose <jderose@redhat.com> | 2009-01-04 00:46:21 -0700 |
commit | c161784973fdedb146a4087d8692b157214c4db0 (patch) | |
tree | d6f318e607647b4163e52061a153f6a11287815f /tests/test_ipalib | |
parent | c081ce5460018634fb30249ead2168ebf3a79044 (diff) | |
download | freeipa-c161784973fdedb146a4087d8692b157214c4db0.tar.gz freeipa-c161784973fdedb146a4087d8692b157214c4db0.tar.xz freeipa-c161784973fdedb146a4087d8692b157214c4db0.zip |
Added request.ugettext() and request.ungettext() functions; added corresponding unit tests
Diffstat (limited to 'tests/test_ipalib')
-rw-r--r-- | tests/test_ipalib/test_request.py | 68 |
1 files changed, 67 insertions, 1 deletions
diff --git a/tests/test_ipalib/test_request.py b/tests/test_ipalib/test_request.py index 7096b9274..62afb1403 100644 --- a/tests/test_ipalib/test_request.py +++ b/tests/test_ipalib/test_request.py @@ -23,11 +23,77 @@ Test the `ipalib.request` module. import threading import locale -from tests.util import raises, TempDir +from tests.util import raises, TempDir, DummyUGettext, DummyUNGettext from ipalib.constants import OVERRIDE_ERROR from ipalib import request +def assert_equal(val1, val2): + assert type(val1) is type(val2), '%r != %r' % (val1, val2) + assert val1 == val2, '%r != %r' % (val1, val2) + + +def test_ugettext(): + """ + Test the `ipalib.request.ugettext` function. + """ + f = request.ugettext + context = request.context + message = 'Hello, world!' + + # Test with no context.ugettext: + assert not hasattr(context, 'ugettext') + assert_equal(f(message), u'Hello, world!') + + # Test with dummy context.ugettext: + assert not hasattr(context, 'ugettext') + dummy = DummyUGettext() + context.ugettext = dummy + assert f(message) is dummy.translation + assert dummy.message is message + + # Cleanup + del context.ugettext + assert not hasattr(context, 'ugettext') + + +def test_ungettext(): + """ + Test the `ipalib.request.ungettext` function. + """ + f = request.ungettext + context = request.context + singular = 'Goose' + plural = 'Geese' + + # Test with no context.ungettext: + assert not hasattr(context, 'ungettext') + assert_equal(f(singular, plural, 1), u'Goose') + assert_equal(f(singular, plural, 2), u'Geese') + + # Test singular with dummy context.ungettext + assert not hasattr(context, 'ungettext') + dummy = DummyUNGettext() + context.ungettext = dummy + assert f(singular, plural, 1) is dummy.translation_singular + assert dummy.singular is singular + assert dummy.plural is plural + assert dummy.n == 1 + del context.ungettext + assert not hasattr(context, 'ungettext') + + # Test plural with dummy context.ungettext + assert not hasattr(context, 'ungettext') + dummy = DummyUNGettext() + context.ungettext = dummy + assert f(singular, plural, 2) is dummy.translation_plural + assert dummy.singular is singular + assert dummy.plural is plural + assert dummy.n == 2 + del context.ungettext + assert not hasattr(context, 'ungettext') + + def test_set_languages(): """ Test the `ipalib.request.set_languages` function. |