diff options
| author | Tom Christie | 2013-05-18 04:24:16 -0700 |
|---|---|---|
| committer | Tom Christie | 2013-05-18 04:24:16 -0700 |
| commit | 0c95405ea7d9d93c2f03add3ec8c10afad08b63a (patch) | |
| tree | 845f6c301d3069b35a0587a843dc076c1b1e2226 /rest_framework/tests/fields.py | |
| parent | 2a3056d03844a31373f1e30aec58e70616115838 (diff) | |
| parent | 8fe43236a22e56d1741b49b92f0c53e01cd9e5f6 (diff) | |
| download | django-rest-framework-0c95405ea7d9d93c2f03add3ec8c10afad08b63a.tar.bz2 | |
Merge pull request #853 from pyriku/725-blank-choice-dash
Adds BLANK_CHOICE_DASH as a choice item
Diffstat (limited to 'rest_framework/tests/fields.py')
| -rw-r--r-- | rest_framework/tests/fields.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/rest_framework/tests/fields.py b/rest_framework/tests/fields.py index 5b5ce835..6b1cdfc7 100644 --- a/rest_framework/tests/fields.py +++ b/rest_framework/tests/fields.py @@ -659,3 +659,29 @@ class DecimalFieldTest(TestCase): self.assertFalse(s.is_valid()) self.assertEqual(s.errors, {'decimal_field': ['Ensure that there are no more than 4 digits in total.']}) + + +class ChoiceFieldTests(TestCase): + """ + Tests for the ChoiceField options generator + """ + + SAMPLE_CHOICES = [ + ('red', 'Red'), + ('green', 'Green'), + ('blue', 'Blue'), + ] + + def test_choices_required(self): + """ + Make sure proper choices are rendered if field is required + """ + f = serializers.ChoiceField(required=True, choices=self.SAMPLE_CHOICES) + self.assertEqual(f.choices, self.SAMPLE_CHOICES) + + def test_choices_not_required(self): + """ + Make sure proper choices (plus blank) are rendered if the field isn't required + """ + f = serializers.ChoiceField(required=False, choices=self.SAMPLE_CHOICES) + self.assertEqual(f.choices, models.fields.BLANK_CHOICE_DASH + self.SAMPLE_CHOICES) |
