From c49829e5bdf5908394992f3e3a2422469bf17891 Mon Sep 17 00:00:00 2001 From: Andy Freeland Date: Tue, 12 Aug 2014 19:35:19 -0400 Subject: [PATCH] `RelatedField`s doesn't support `many=True` and `required=True` --- rest_framework/tests/test_relations.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/rest_framework/tests/test_relations.py b/rest_framework/tests/test_relations.py index 37ac826b2..d7e4c2d31 100644 --- a/rest_framework/tests/test_relations.py +++ b/rest_framework/tests/test_relations.py @@ -50,6 +50,19 @@ class TestManyRelatedMixin(TestCase): self.assertEqual(into['field_name'], []) +class TestManyRequired(TestCase): + def test_related_field_many_and_required(self): + """ + `RelatedField`s with `many=True` should also support `required=True`. + """ + field = serializers.RelatedField(many=True, read_only=False, required=True) + + into = {} + with self.assertRaises(serializers.ValidationError) as cm: + field.field_from_native({}, None, 'field_name', into) + self.assertEqual(cm.exception.messages, ['This field is required.']) + + # Regression tests for #694 (`source` attribute on related fields) class RelatedFieldSourceTests(TestCase):