Beispiel #1
0
 def testAddTextForExistingLanguageSucceed(self):
     resource = QuantityStrings('key', self.proper_languages)
     for lang in self.proper_languages:
         text = build_test_text(lang)
         for quantity in QuantityStrings.QUANTITIES:
             resource.add_quantity_string(lang, quantity, text)
             self.assertEqual(resource.get_quantity_string(lang, quantity), text)
Beispiel #2
0
 def testGetStringForNonexistingLanguageFail(self):
     resource = QuantityStrings('key', self.proper_languages)
     for lang in self.bad_languages:
         for quantity in QuantityStrings.QUANTITIES:
             try:
                 resource.get_quantity_string(lang, quantity)
                 self.fail('This operation should fail')
             except MstException:
                 pass
Beispiel #3
0
 def testKeyCanBeAssignedOnlyOne(self):
     key = "key"
     string = QuantityStrings(key, [])
     self.assertEqual(string.key, key)
     try:
         string.key = "different key"
         self.fail("This operation should fail")
     except AttributeError:
         pass
Beispiel #4
0
 def testAddTextForNonexistingLanguageFail(self):
     resource = QuantityStrings('key', self.proper_languages)
     for lang in self.bad_languages:
         for quantity in QuantityStrings.QUANTITIES:
             try:
                 quantity_string = build_test_text(lang)
                 resource.add_quantity_string(lang, quantity, quantity_string)
                 self.fail('This operation should fail')
             except MstException:
                 pass
Beispiel #5
0
 def testKeyMustBeAString(self):
     keys = [ object(), [], {}, () ]
     for key in keys:
         try:
             string = QuantityStrings(key, [])
             self.fail("This operation should fail")
         except ValueError:
             pass
 def get_quantity_strings(self):
     """Collect all QuantityStrings resources and return a list"""
     resources = {}
     for row in self.data:
         if (self._get_row_type(row) == self.TYPE_QUANTITY_STRING
                 and self._has_valid_key(row)):
             key_with_quantity = row[self.id_column]
             key, quantity = key_with_quantity.split(':')
             if (key in resources) == False:
                 resources[key] = QuantityStrings(key, self.languages)
             qs = resources[key]
             for lang in self.languages:
                 col = self.language_column(lang)
                 text = row[col]
                 options = self._get_row_options(row)
                 qs.add_quantity_string(lang, quantity,
                                        ResourceText(text, options))
     return sorted(resources.values())
Beispiel #7
0
 def testQuantityStringsAreEmptyByDefault(self):
     resource = QuantityStrings('key', self.proper_languages)
     for language in self.proper_languages:
         for quantity in QuantityStrings.QUANTITIES:
             value = resource.get_quantity_string(language, quantity)
             self.assertEqual(value, '', 'Expected quantity string %s for language %s to be empty' % (quantity, language) ) 
Beispiel #8
0
 def testQuantityStringsContainAllQuantityKeys(self):
     string = QuantityStrings('key', self.proper_languages)
     for lang in self.proper_languages:
         quantities = string.get_quantities(lang)
         self.assertEqual( len(quantities), 6, "Expected 6 quantities")