Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
django-rest-framework
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
django-rest-framework
Commits
746686b0
Commit
746686b0
authored
Nov 03, 2012
by
Tom Christie
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #360 from jmagnusson/master
Tests for pull #358 "Return dictionaries as is"
parents
59c1e093
38af6107
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
31 additions
and
1 deletions
+31
-1
rest_framework/tests/models.py
+7
-0
rest_framework/tests/serializer.py
+24
-1
No files found.
rest_framework/tests/models.py
View file @
746686b0
...
...
@@ -122,6 +122,13 @@ class Person(RESTFrameworkModel):
name
=
models
.
CharField
(
max_length
=
10
)
age
=
models
.
IntegerField
(
null
=
True
,
blank
=
True
)
@property
def
info
(
self
):
return
{
'name'
:
self
.
name
,
'age'
:
self
.
age
,
}
# Model for issue #324
class
BlankFieldModel
(
RESTFrameworkModel
):
...
...
rest_framework/tests/serializer.py
View file @
746686b0
import
datetime
from
django.test
import
TestCase
from
rest_framework
import
serializers
from
rest_framework.tests.models
import
*
from
rest_framework.tests.models
import
(
ActionItem
,
Anchor
,
BasicModel
,
BlankFieldModel
,
BlogPost
,
CallableDefaultValueModel
,
DefaultValueModel
,
ManyToManyModel
,
Person
,
ReadOnlyManyToManyModel
)
class
SubComment
(
object
):
...
...
@@ -44,8 +46,11 @@ class ActionItemSerializer(serializers.ModelSerializer):
class
PersonSerializer
(
serializers
.
ModelSerializer
):
info
=
serializers
.
Field
(
source
=
'info'
)
class
Meta
:
model
=
Person
fields
=
(
'name'
,
'age'
,
'info'
)
class
BasicTests
(
TestCase
):
...
...
@@ -67,6 +72,9 @@ class BasicTests(TestCase):
'created'
:
datetime
.
datetime
(
2012
,
1
,
1
),
'sub_comment'
:
'And Merry Christmas!'
}
self
.
person_data
=
{
'name'
:
'dwight'
,
'age'
:
35
}
self
.
person
=
Person
(
**
self
.
person_data
)
self
.
person
.
save
()
def
test_empty
(
self
):
serializer
=
CommentSerializer
()
...
...
@@ -97,6 +105,21 @@ class BasicTests(TestCase):
self
.
assertEquals
(
serializer
.
object
,
expected
)
self
.
assertTrue
(
serializer
.
object
is
expected
)
self
.
assertEquals
(
serializer
.
data
[
'sub_comment'
],
'And Merry Christmas!'
)
def
test_model_fields_as_expected
(
self
):
""" Make sure that the fields returned are the same as defined
in the Meta data
"""
serializer
=
PersonSerializer
(
instance
=
self
.
person
)
self
.
assertEquals
(
set
(
serializer
.
data
.
keys
()),
set
([
'name'
,
'age'
,
'info'
]))
def
test_field_with_dictionary
(
self
):
""" Make sure that dictionaries from fields are left intact
"""
serializer
=
PersonSerializer
(
instance
=
self
.
person
)
expected
=
self
.
person_data
self
.
assertEquals
(
serializer
.
data
[
'info'
],
expected
)
class
ValidationTests
(
TestCase
):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment