Exemple #1
0
    def test_make_friendly_plural_forms(self):
        single_form = make_friendly_plural_forms('0', 1)
        self.assertEqual(single_form,
                         [{'examples': [0, 1, 2, 3, 4, 5], 'form': 0}])

        two_forms = make_friendly_plural_forms('n!=1', 2)
        self.assertEqual(two_forms,
                         [{'examples': [1], 'form': 0},
                          {'examples': [0, 2, 3, 4, 5, 6], 'form': 1}])
Exemple #2
0
    def test_make_friendly_plural_form_zero_handling(self):
        zero_forms = make_friendly_plural_forms('n!=0', 2)
        self.assertEqual(zero_forms,
                         [{'examples': [0], 'form': 0},
                          {'examples': [1, 2, 3, 4, 5, 6], 'form': 1}])

        # Since 'n' can be zero as well, dividing by it won't work.
        self.assertRaises(BadPluralExpression,
                          make_friendly_plural_forms, '(1/n)', 1)
Exemple #3
0
    def friendly_plural_forms(self):
        """Formats the plural forms' example list.

        It takes the list of examples for each plural form and transforms in a
        comma separated list to be displayed.
        """
        pluralforms_list = make_friendly_plural_forms(
                self.context.pluralexpression, self.context.pluralforms)

        for item in pluralforms_list:
            examples = ", ".join(map(str, item['examples']))
            if len(item['examples']) != 1:
                examples += "..."
            else:
                examples += "."
            item['examples'] = examples

        return pluralforms_list
    def friendly_plural_forms(self):
        """Formats the plural forms' example list.

        It takes the list of examples for each plural form and transforms in a
        comma separated list to be displayed.
        """
        pluralforms_list = make_friendly_plural_forms(
            self.context.pluralexpression, self.context.pluralforms)

        for item in pluralforms_list:
            examples = ", ".join(map(str, item['examples']))
            if len(item['examples']) != 1:
                examples += "..."
            else:
                examples += "."
            item['examples'] = examples

        return pluralforms_list
Exemple #5
0
 def _validatePluralData(self, pluralforms, pluralexpression):
     """Validate plural expression and number of plural forms."""
     try:
         make_friendly_plural_forms(pluralexpression, pluralforms)
     except BadPluralExpression as e:
         self.setFieldError('pluralexpression', str(e))
 def _validatePluralData(self, pluralforms, pluralexpression):
     """Validate plural expression and number of plural forms."""
     try:
         make_friendly_plural_forms(pluralexpression, pluralforms)
     except BadPluralExpression as e:
         self.setFieldError('pluralexpression', str(e))