annotate babel/tests/support.py @ 530:85e1beadacb0

Update the copyright line.
author jruigrok
date Sat, 05 Mar 2011 15:22:28 +0000
parents 53c68c594b5f
children
rev   line source
61
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
1 # -*- coding: utf-8 -*-
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
2 #
530
85e1beadacb0 Update the copyright line.
jruigrok
parents: 420
diff changeset
3 # Copyright (C) 2007-2011 Edgewall Software
61
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
4 # All rights reserved.
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
5 #
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
6 # This software is licensed as described in the file COPYING, which
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
7 # you should have received as part of this distribution. The terms
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
8 # are also available at http://babel.edgewall.org/wiki/License.
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
9 #
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
10 # This software consists of voluntary contributions made by many
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
11 # individuals. For the exact contribution history, see the revision
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
12 # history and logs, available at http://babel.edgewall.org/log/.
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
13
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
14 import doctest
420
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
15 import os
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
16 from StringIO import StringIO
61
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
17 import unittest
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
18
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
19 from babel import support
420
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
20 from babel.messages import Catalog
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
21 from babel.messages.mofile import write_mo
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
22
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
23 class TranslationsTestCase(unittest.TestCase):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
24
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
25 def setUp(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
26 # Use a locale which won't fail to run the tests
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
27 os.environ['LANG'] = 'en_US.UTF-8'
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
28 messages1 = [
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
29 ('foo', {'string': 'Voh'}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
30 ('foo', {'string': 'VohCTX', 'context': 'foo'}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
31 (('foo1', 'foos1'), {'string': ('Voh1', 'Vohs1')}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
32 (('foo1', 'foos1'), {'string': ('VohCTX1', 'VohsCTX1'), 'context': 'foo'}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
33 ]
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
34 messages2 = [
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
35 ('foo', {'string': 'VohD'}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
36 ('foo', {'string': 'VohCTXD', 'context': 'foo'}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
37 (('foo1', 'foos1'), {'string': ('VohD1', 'VohsD1')}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
38 (('foo1', 'foos1'), {'string': ('VohCTXD1', 'VohsCTXD1'), 'context': 'foo'}),
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
39 ]
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
40 catalog1 = Catalog(locale='en_GB', domain='messages')
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
41 catalog2 = Catalog(locale='en_GB', domain='messages1')
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
42 for ids, kwargs in messages1:
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
43 catalog1.add(ids, **kwargs)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
44 for ids, kwargs in messages2:
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
45 catalog2.add(ids, **kwargs)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
46 catalog1_fp = StringIO()
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
47 catalog2_fp = StringIO()
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
48 write_mo(catalog1_fp, catalog1)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
49 catalog1_fp.seek(0)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
50 write_mo(catalog2_fp, catalog2)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
51 catalog2_fp.seek(0)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
52 translations1 = support.Translations(catalog1_fp)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
53 translations2 = support.Translations(catalog2_fp, domain='messages1')
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
54 self.translations = translations1.add(translations2, merge=False)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
55
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
56 def assertEqualTypeToo(self, expected, result):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
57 self.assertEqual(expected, result)
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
58 assert type(expected) == type(result), "instance type's do not " + \
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
59 "match: %r!=%r" % (type(expected), type(result))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
60
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
61 def test_pgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
62 self.assertEqualTypeToo('Voh', self.translations.gettext('foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
63 self.assertEqualTypeToo('VohCTX', self.translations.pgettext('foo',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
64 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
65
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
66 def test_upgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
67 self.assertEqualTypeToo(u'Voh', self.translations.ugettext('foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
68 self.assertEqualTypeToo(u'VohCTX', self.translations.upgettext('foo',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
69 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
70
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
71 def test_lpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
72 self.assertEqualTypeToo('Voh', self.translations.lgettext('foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
73 self.assertEqualTypeToo('VohCTX', self.translations.lpgettext('foo',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
74 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
75
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
76 def test_npgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
77 self.assertEqualTypeToo('Voh1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
78 self.translations.ngettext('foo1', 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
79 self.assertEqualTypeToo('Vohs1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
80 self.translations.ngettext('foo1', 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
81 self.assertEqualTypeToo('VohCTX1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
82 self.translations.npgettext('foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
83 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
84 self.assertEqualTypeToo('VohsCTX1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
85 self.translations.npgettext('foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
86 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
87
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
88 def test_unpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
89 self.assertEqualTypeToo(u'Voh1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
90 self.translations.ungettext('foo1', 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
91 self.assertEqualTypeToo(u'Vohs1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
92 self.translations.ungettext('foo1', 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
93 self.assertEqualTypeToo(u'VohCTX1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
94 self.translations.unpgettext('foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
95 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
96 self.assertEqualTypeToo(u'VohsCTX1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
97 self.translations.unpgettext('foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
98 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
99
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
100 def test_lnpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
101 self.assertEqualTypeToo('Voh1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
102 self.translations.lngettext('foo1', 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
103 self.assertEqualTypeToo('Vohs1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
104 self.translations.lngettext('foo1', 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
105 self.assertEqualTypeToo('VohCTX1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
106 self.translations.lnpgettext('foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
107 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
108 self.assertEqualTypeToo('VohsCTX1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
109 self.translations.lnpgettext('foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
110 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
111
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
112 def test_dpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
113 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
114 'VohD', self.translations.dgettext('messages1', 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
115 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
116 'VohCTXD', self.translations.dpgettext('messages1', 'foo', 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
117
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
118 def test_dupgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
119 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
120 u'VohD', self.translations.dugettext('messages1', 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
121 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
122 u'VohCTXD', self.translations.dupgettext('messages1', 'foo', 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
123
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
124 def test_ldpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
125 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
126 'VohD', self.translations.ldgettext('messages1', 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
127 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
128 'VohCTXD', self.translations.ldpgettext('messages1', 'foo', 'foo'))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
129
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
130 def test_dnpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
131 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
132 'VohD1', self.translations.dngettext('messages1', 'foo1', 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
133 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
134 'VohsD1', self.translations.dngettext('messages1', 'foo1', 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
135 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
136 'VohCTXD1', self.translations.dnpgettext('messages1', 'foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
137 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
138 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
139 'VohsCTXD1', self.translations.dnpgettext('messages1', 'foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
140 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
141
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
142 def test_dunpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
143 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
144 u'VohD1', self.translations.dungettext('messages1', 'foo1', 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
145 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
146 u'VohsD1', self.translations.dungettext('messages1', 'foo1', 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
147 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
148 u'VohCTXD1', self.translations.dunpgettext('messages1', 'foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
149 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
150 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
151 u'VohsCTXD1', self.translations.dunpgettext('messages1', 'foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
152 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
153
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
154 def test_ldnpgettext(self):
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
155 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
156 'VohD1', self.translations.ldngettext('messages1', 'foo1', 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
157 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
158 'VohsD1', self.translations.ldngettext('messages1', 'foo1', 'foos1', 2))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
159 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
160 'VohCTXD1', self.translations.ldnpgettext('messages1', 'foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
161 'foos1', 1))
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
162 self.assertEqualTypeToo(
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
163 'VohsCTXD1', self.translations.ldnpgettext('messages1', 'foo', 'foo1',
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
164 'foos1', 2))
61
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
165
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
166 def suite():
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
167 suite = unittest.TestSuite()
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
168 suite.addTest(doctest.DocTestSuite(support))
420
53c68c594b5f Add support for `msgctxt`. See #54.
palgarvio
parents: 61
diff changeset
169 suite.addTest(unittest.makeSuite(TranslationsTestCase, 'test'))
61
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
170 return suite
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
171
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
172 if __name__ == '__main__':
da7efa40a9e2 Move `Translations` and `LazyProxy` to new `babel.support` module, which should contain any convenience code that is useful for applications using Babel/I18n, but not used by Babel itself.
cmlenz
parents:
diff changeset
173 unittest.main(defaultTest='suite')
Copyright (C) 2012-2017 Edgewall Software