diff options
| -rw-r--r-- | rest_framework/tests/models.py | 28 | ||||
| -rw-r--r-- | rest_framework/tests/relations_hyperlink.py | 25 | ||||
| -rw-r--r-- | rest_framework/tests/relations_nested.py | 20 | ||||
| -rw-r--r-- | rest_framework/tests/relations_pk.py | 31 | 
4 files changed, 31 insertions, 73 deletions
| diff --git a/rest_framework/tests/models.py b/rest_framework/tests/models.py index 0759650a..54fa2dec 100644 --- a/rest_framework/tests/models.py +++ b/rest_framework/tests/models.py @@ -176,3 +176,31 @@ class OptionalRelationModel(RESTFrameworkModel):  # Model for RegexField  class Book(RESTFrameworkModel):      isbn = models.CharField(max_length=13) + + +# Models for relations tests +# ManyToMany +class ManyToManyTarget(RESTFrameworkModel): +    name = models.CharField(max_length=100) + + +class ManyToManySource(RESTFrameworkModel): +    name = models.CharField(max_length=100) +    targets = models.ManyToManyField(ManyToManyTarget, related_name='sources') + + +# ForeignKey +class ForeignKeyTarget(RESTFrameworkModel): +    name = models.CharField(max_length=100) + + +class ForeignKeySource(RESTFrameworkModel): +    name = models.CharField(max_length=100) +    target = models.ForeignKey(ForeignKeyTarget, related_name='sources') + + +# Nullable ForeignKey +class NullableForeignKeySource(RESTFrameworkModel): +    name = models.CharField(max_length=100) +    target = models.ForeignKey(ForeignKeyTarget, null=True, blank=True, +                               related_name='nullable_sources') diff --git a/rest_framework/tests/relations_hyperlink.py b/rest_framework/tests/relations_hyperlink.py index 0a7ea0f4..a7f8a035 100644 --- a/rest_framework/tests/relations_hyperlink.py +++ b/rest_framework/tests/relations_hyperlink.py @@ -2,7 +2,7 @@ from django.db import models  from django.test import TestCase  from rest_framework import serializers  from rest_framework.compat import patterns, url - +from rest_framework.tests.models import ManyToManyTarget, ManyToManySource, ForeignKeyTarget, ForeignKeySource  def dummy_view(request, pk):      pass @@ -15,18 +15,6 @@ urlpatterns = patterns('',      url(r'^nullableforeignkeysource/(?P<pk>[0-9]+)/$', dummy_view, name='nullableforeignkeysource-detail'),  ) - -# ManyToMany - -class ManyToManyTarget(models.Model): -    name = models.CharField(max_length=100) - - -class ManyToManySource(models.Model): -    name = models.CharField(max_length=100) -    targets = models.ManyToManyField(ManyToManyTarget, related_name='sources') - -  class ManyToManyTargetSerializer(serializers.HyperlinkedModelSerializer):      sources = serializers.ManyHyperlinkedRelatedField(view_name='manytomanysource-detail') @@ -39,17 +27,6 @@ class ManyToManySourceSerializer(serializers.HyperlinkedModelSerializer):          model = ManyToManySource -# ForeignKey - -class ForeignKeyTarget(models.Model): -    name = models.CharField(max_length=100) - - -class ForeignKeySource(models.Model): -    name = models.CharField(max_length=100) -    target = models.ForeignKey(ForeignKeyTarget, related_name='sources') - -  class ForeignKeyTargetSerializer(serializers.HyperlinkedModelSerializer):      sources = serializers.ManyHyperlinkedRelatedField(view_name='foreignkeysource-detail') diff --git a/rest_framework/tests/relations_nested.py b/rest_framework/tests/relations_nested.py index b1147378..5710c1ef 100644 --- a/rest_framework/tests/relations_nested.py +++ b/rest_framework/tests/relations_nested.py @@ -1,17 +1,7 @@  from django.db import models  from django.test import TestCase  from rest_framework import serializers - - -# ForeignKey - -class ForeignKeyTarget(models.Model): -    name = models.CharField(max_length=100) - - -class ForeignKeySource(models.Model): -    name = models.CharField(max_length=100) -    target = models.ForeignKey(ForeignKeyTarget, related_name='sources') +from rest_framework.tests.models import ForeignKeyTarget, ForeignKeySource, NullableForeignKeySource  class ForeignKeySourceSerializer(serializers.ModelSerializer): @@ -32,14 +22,6 @@ class ForeignKeyTargetSerializer(serializers.ModelSerializer):          model = ForeignKeyTarget -# Nullable ForeignKey - -class NullableForeignKeySource(models.Model): -    name = models.CharField(max_length=100) -    target = models.ForeignKey(ForeignKeyTarget, null=True, blank=True, -                               related_name='nullable_sources') - -  class NullableForeignKeySourceSerializer(serializers.ModelSerializer):      class Meta:          depth = 1 diff --git a/rest_framework/tests/relations_pk.py b/rest_framework/tests/relations_pk.py index 28967099..af6da2c0 100644 --- a/rest_framework/tests/relations_pk.py +++ b/rest_framework/tests/relations_pk.py @@ -1,17 +1,7 @@  from django.db import models  from django.test import TestCase  from rest_framework import serializers - - -# ManyToMany - -class ManyToManyTarget(models.Model): -    name = models.CharField(max_length=100) - - -class ManyToManySource(models.Model): -    name = models.CharField(max_length=100) -    targets = models.ManyToManyField(ManyToManyTarget, related_name='sources') +from rest_framework.tests.models import ManyToManyTarget, ManyToManySource, ForeignKeyTarget, ForeignKeySource, NullableForeignKeySource  class ManyToManyTargetSerializer(serializers.ModelSerializer): @@ -26,17 +16,6 @@ class ManyToManySourceSerializer(serializers.ModelSerializer):          model = ManyToManySource -# ForeignKey - -class ForeignKeyTarget(models.Model): -    name = models.CharField(max_length=100) - - -class ForeignKeySource(models.Model): -    name = models.CharField(max_length=100) -    target = models.ForeignKey(ForeignKeyTarget, related_name='sources') - -  class ForeignKeyTargetSerializer(serializers.ModelSerializer):      sources = serializers.ManyPrimaryKeyRelatedField() @@ -49,14 +28,6 @@ class ForeignKeySourceSerializer(serializers.ModelSerializer):          model = ForeignKeySource -# Nullable ForeignKey - -class NullableForeignKeySource(models.Model): -    name = models.CharField(max_length=100) -    target = models.ForeignKey(ForeignKeyTarget, null=True, blank=True, -                               related_name='nullable_sources') - -  class NullableForeignKeySourceSerializer(serializers.ModelSerializer):      class Meta:          model = NullableForeignKeySource | 
