コード例 #1
0
 def test_userprefupdateview(self):
     self.apiclient.force_authenticate(user=self.user)
     response = self.apiclient.put('/api/user/preferences/',
                                   data={
                                       "age": "b",
                                       "gender": "f",
                                       "size": "s"
                                   },
                                   format='json')
     expected = UserPrefSerializer(UserPref.objects.get(user=self.user))
     self.assertJSONEqual(response.content, expected.data)
コード例 #2
0
    def put(self, request, *args, **kwargs):
        obj = UserPref.objects.get(user=self.request.user)

        if request.method == 'PUT':
            obj.age = request.data.get('age')
            obj.gender = request.data.get('gender')
            obj.size = request.data.get('size')

            obj.save()

            serializer = UserPrefSerializer(obj)

        return Response(serializer.data)
コード例 #3
0
 def test_validate_userpref_good_size(self):
     self.user_pref_1['gender'] = 'm'
     serializer = UserPrefSerializer(data=self.user_pref_1)
     self.assertTrue(serializer.is_valid())
コード例 #4
0
 def test_validate_userpref_bad_size(self):
     self.user_pref_1['size'] = 'z'
     serializer = UserPrefSerializer(data=self.user_pref_1)
     self.assertFalse(serializer.is_valid())
     self.assertEqual(set(serializer.errors.keys()), set(['size']))
コード例 #5
0
 def test_validate_userpref_good_age(self):
     self.user_pref_1['age'] = 's'
     serializer = UserPrefSerializer(data=self.user_pref_1)
     self.assertTrue(serializer.is_valid())
class UserPrefSerializerTestCase(TestCase):
    def setUp(self):
        self.test_serializer = UserPrefSerializer()

    def test_invalid_age_character_triggers_validationerror(self):
        with self.assertRaises(serializers.ValidationError):
            self.test_serializer.validate_age('x')

    def test_repeated_age_character_triggers_validationerror(self):
        with self.assertRaises(serializers.ValidationError):
            self.test_serializer.validate_age('bb')

    def test_invalid_gender_character_triggers_validationerror(self):
        with self.assertRaises(serializers.ValidationError):
            self.test_serializer.validate_gender('q')

    def test_repeated_gender_character_triggers_validationerror(self):
        with self.assertRaises(serializers.ValidationError):
            self.test_serializer.validate_gender('ff')

    def test_invalid_size_character_triggers_validationerror(self):
        with self.assertRaises(serializers.ValidationError):
            self.test_serializer.validate_size('x')

    def test_repeated_size_character_triggers_validationerror(self):
        with self.assertRaises(serializers.ValidationError):
            self.test_serializer.validate_size('ll')
 def setUp(self):
     self.test_serializer = UserPrefSerializer()