diff options
| author | Xavier Ordoquy | 2014-04-30 22:24:01 +0200 |
|---|---|---|
| committer | Xavier Ordoquy | 2014-04-30 22:24:01 +0200 |
| commit | 2aca69a94601858a462060bc55154c812f70fb91 (patch) | |
| tree | 86f4d926344bea677ff8dd56505332fc16fdecc8 /tests | |
| parent | c5f68fba0638a15fa3c802f1bafc664e890611dc (diff) | |
| parent | d8fb81ceb15afe09a50584afcc466de812d30046 (diff) | |
| download | django-rest-framework-2aca69a94601858a462060bc55154c812f70fb91.tar.bz2 | |
Merge remote-tracking branch 'reference/master' into feature/pytest
Conflicts:
tests/test_serializer.py
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/models.py | 3 | ||||
| -rw-r--r-- | tests/test_authentication.py | 8 | ||||
| -rw-r--r-- | tests/test_serializer.py | 26 |
3 files changed, 34 insertions, 3 deletions
diff --git a/tests/models.py b/tests/models.py index 6c8f2342..0256697a 100644 --- a/tests/models.py +++ b/tests/models.py @@ -143,7 +143,8 @@ class ForeignKeyTarget(RESTFrameworkModel): class ForeignKeySource(RESTFrameworkModel): name = models.CharField(max_length=100) - target = models.ForeignKey(ForeignKeyTarget, related_name='sources') + target = models.ForeignKey(ForeignKeyTarget, related_name='sources', + help_text='Target', verbose_name='Target') # Nullable ForeignKey diff --git a/tests/test_authentication.py b/tests/test_authentication.py index 1d90493e..d0290eac 100644 --- a/tests/test_authentication.py +++ b/tests/test_authentication.py @@ -19,7 +19,7 @@ from rest_framework.authentication import ( OAuth2Authentication ) from rest_framework.authtoken.models import Token -from rest_framework.compat import patterns, url, include +from rest_framework.compat import patterns, url, include, six from rest_framework.compat import oauth2_provider, oauth2_provider_scope from rest_framework.compat import oauth, oauth_provider from rest_framework.test import APIRequestFactory, APIClient @@ -195,6 +195,12 @@ class TokenAuthTests(TestCase): token = Token.objects.create(user=self.user) self.assertTrue(bool(token.key)) + def test_generate_key_returns_string(self): + """Ensure generate_key returns a string""" + token = Token() + key = token.generate_key() + self.assertTrue(isinstance(key, six.string_types)) + def test_token_login_json(self): """Ensure token login view using JSON POST works.""" client = APIClient(enforce_csrf_checks=True) diff --git a/tests/test_serializer.py b/tests/test_serializer.py index f8966886..73eb5c79 100644 --- a/tests/test_serializer.py +++ b/tests/test_serializer.py @@ -9,7 +9,8 @@ from django.utils.translation import ugettext_lazy as _ from rest_framework import serializers, fields, relations from tests.models import (HasPositiveIntegerAsChoice, Album, ActionItem, Anchor, BasicModel, BlankFieldModel, BlogPost, BlogPostComment, Book, CallableDefaultValueModel, DefaultValueModel, - ManyToManyModel, Person, ReadOnlyManyToManyModel, Photo, RESTFrameworkModel) + ManyToManyModel, Person, ReadOnlyManyToManyModel, Photo, RESTFrameworkModel, + ForeignKeySource, ManyToManySource) from tests.models import BasicModelSerializer import datetime import pickle @@ -176,6 +177,16 @@ class PositiveIntegerAsChoiceSerializer(serializers.ModelSerializer): fields = ['some_integer'] +class ForeignKeySourceSerializer(serializers.ModelSerializer): + class Meta: + model = ForeignKeySource + + +class HyperlinkedForeignKeySourceSerializer(serializers.HyperlinkedModelSerializer): + class Meta: + model = ForeignKeySource + + class BasicTests(TestCase): def setUp(self): self.comment = Comment( @@ -1600,6 +1611,19 @@ class ManyFieldHelpTextTest(TestCase): self.assertEqual('Some help text.', rel_field.help_text) +class AttributeMappingOnAutogeneratedRelatedFields(TestCase): + + def test_primary_key_related_field(self): + serializer = ForeignKeySourceSerializer() + self.assertEqual(serializer.fields['target'].help_text, 'Target') + self.assertEqual(serializer.fields['target'].label, 'Target') + + def test_hyperlinked_related_field(self): + serializer = HyperlinkedForeignKeySourceSerializer() + self.assertEqual(serializer.fields['target'].help_text, 'Target') + self.assertEqual(serializer.fields['target'].label, 'Target') + + @unittest.skipUnless(PIL is not None, 'PIL is not installed') class AttributeMappingOnAutogeneratedFieldsTests(TestCase): |
