def test_retrocompatibility(self):
     MY_CHOICES = Choices(('TWO', 2, u'Deux'), ('FOUR', 4, u'Quatre'),
                          name="EVEN")
     MY_CHOICES.add_choices(
         "ODD",
         ('ONE', 1, u'Un'),
         ('THREE', 3, u'Trois'),
     )
     self.assertEqual(MY_CHOICES.CHOICES, ((2, u'Deux'), (4, u'Quatre'),
                                           (1, u'Un'), (3, u'Trois')))
     self.assertEqual(MY_CHOICES.ODD, ((1, u'Un'), (3, u'Trois')))
     self.assertEqual(MY_CHOICES.EVEN, ((2, u'Deux'), (4, u'Quatre')))
示例#2
0
 def test_retrocompatibility(self):
     MY_CHOICES = Choices(
        ('TWO', 2, u'Deux'),
        ('FOUR', 4, u'Quatre'),
        name="EVEN"
     )
     MY_CHOICES.add_choices("ODD",
        ('ONE', 1, u'Un'),
        ('THREE', 3, u'Trois'),
     )
     self.assertEqual(MY_CHOICES.CHOICES,
                      ((2, u'Deux'), (4, u'Quatre'), (1, u'Un'), (3, u'Trois'))
     )
     self.assertEqual(MY_CHOICES.ODD, ((1, u'Un'), (3, u'Trois')))
     self.assertEqual(MY_CHOICES.EVEN, ((2, u'Deux'), (4, u'Quatre')))
    def test_add_should_add_in_correct_order(self):
        SOME_CHOICES = Choices(
            ('ONE', 1, u'One'),
            ('TWO', 2, u'Two'),
        )
        OTHER_CHOICES = Choices(
            ('THREE', 3, u'Three'),
            ('FOUR', 4, u'Four'),
        )
        # Adding a choices to choices
        tup = SOME_CHOICES + OTHER_CHOICES
        self.assertEqual(tup,
                         ((1, 'One'), (2, 'Two'), (3, 'Three'), (4, 'Four')))

        # Adding a tuple to choices
        tup = SOME_CHOICES + ((3, 'Three'), (4, 'Four'))
        self.assertEqual(tup,
                         ((1, 'One'), (2, 'Two'), (3, 'Three'), (4, 'Four')))
示例#4
0
# -*- coding: utf-8 -*-
from django.test import TestCase
from django import forms

from extended_choices.choices import Choices
from extended_choices.fields import NamedExtendedChoiceFormField

MY_CHOICES = Choices(
   ('ONE', 1, u'One for the money'),
   ('TWO', 2, u'Two for the show'),
   ('THREE', 3, u'Three to get ready'),
)
MY_CHOICES.add_subset("ODD", ("ONE", "THREE"))

class FieldsTests(TestCase):
    """
    Testing the fields
    """
    def test_named_extended_choice_form_field(self):
        """
        Should return accept only string, and should return the integer value.
        """
        field = NamedExtendedChoiceFormField(choices=MY_CHOICES)
        # Should work with lowercase
        self.assertEqual(field.clean("one"), 1)
        # Should word with uppercase
        self.assertEqual(field.clean("ONE"), 1)
        # Should not validate with wrong name
        self.assertRaises(forms.ValidationError, field.clean, "FOUR")
        # Should not validate with integer
        self.assertRaises(forms.ValidationError, field.clean, 1)
# -*- coding: utf-8 -*-
from django.test import TestCase
from django import forms

from extended_choices.choices import Choices
from extended_choices.fields import NamedExtendedChoiceFormField

MY_CHOICES = Choices(
    ('ONE', 1, u'One for the money'),
    ('TWO', 2, u'Two for the show'),
    ('THREE', 3, u'Three to get ready'),
)
MY_CHOICES.add_subset("ODD", ("ONE", "THREE"))


class FieldsTests(TestCase):
    """
    Testing the fields
    """
    def test_named_extended_choice_form_field(self):
        """
        Should return accept only string, and should return the integer value.
        """
        field = NamedExtendedChoiceFormField(choices=MY_CHOICES)
        # Should work with lowercase
        self.assertEqual(field.clean("one"), 1)
        # Should word with uppercase
        self.assertEqual(field.clean("ONE"), 1)
        # Should not validate with wrong name
        self.assertRaises(forms.ValidationError, field.clean, "FOUR")
        # Should not validate with integer
 def test_retrocompatibility(self):
     MY_CHOICES = Choices(("TWO", 2, u"Deux"), ("FOUR", 4, u"Quatre"), name="EVEN")
     MY_CHOICES.add_choices("ODD", ("ONE", 1, u"Un"), ("THREE", 3, u"Trois"))
     self.assertEqual(MY_CHOICES.CHOICES, ((2, u"Deux"), (4, u"Quatre"), (1, u"Un"), (3, u"Trois")))
     self.assertEqual(MY_CHOICES.ODD, ((1, u"Un"), (3, u"Trois")))
     self.assertEqual(MY_CHOICES.EVEN, ((2, u"Deux"), (4, u"Quatre")))