comparison babel/messages/tests/catalog.py @ 314:5c0bda4f20b1

Fix catalog updating with fuzzy matches. Closes #82.
author cmlenz
date Fri, 01 Feb 2008 13:38:09 +0000
parents 3308e9971fab
children 654b632e5482
comparison
equal deleted inserted replaced
313:2d039dbe2f52 314:5c0bda4f20b1
129 assert 'fo' not in cat 129 assert 'fo' not in cat
130 130
131 self.assertEqual('Voh', cat['foo'].string) 131 self.assertEqual('Voh', cat['foo'].string)
132 self.assertEqual(True, cat['foo'].fuzzy) 132 self.assertEqual(True, cat['foo'].fuzzy)
133 133
134 def test_update_fuzzy_matching_no_msgstr(self):
135 cat = catalog.Catalog()
136 cat.add('fo', '')
137 tmpl = catalog.Catalog()
138 tmpl.add('fo')
139 tmpl.add('foo')
140 cat.update(tmpl)
141 assert 'fo' in cat
142 assert 'foo' in cat
143
144 self.assertEqual('', cat['fo'].string)
145 self.assertEqual(False, cat['fo'].fuzzy)
146 self.assertEqual(None, cat['foo'].string)
147 self.assertEqual(False, cat['foo'].fuzzy)
148
149 def test_update_fuzzy_matching_no_cascading(self):
150 cat = catalog.Catalog()
151 cat.add('fo', 'Voh')
152 cat.add('foo', 'Vohe')
153 tmpl = catalog.Catalog()
154 tmpl.add('fo')
155 tmpl.add('foo')
156 tmpl.add('fooo')
157 cat.update(tmpl)
158 assert 'fo' in cat
159 assert 'foo' in cat
160
161 self.assertEqual('Voh', cat['fo'].string)
162 self.assertEqual(False, cat['fo'].fuzzy)
163 self.assertEqual('Vohe', cat['foo'].string)
164 self.assertEqual(False, cat['foo'].fuzzy)
165 self.assertEqual('Vohe', cat['fooo'].string)
166 self.assertEqual(True, cat['fooo'].fuzzy)
167
134 def test_update_without_fuzzy_matching(self): 168 def test_update_without_fuzzy_matching(self):
135 cat = catalog.Catalog() 169 cat = catalog.Catalog()
136 cat.add('fo', 'Voh') 170 cat.add('fo', 'Voh')
137 cat.add('bar', 'Bahr') 171 cat.add('bar', 'Bahr')
138 tmpl = catalog.Catalog() 172 tmpl = catalog.Catalog()
Copyright (C) 2012-2017 Edgewall Software