Skip to content

Commit f9029e3

Browse files
committed
Test the serializer's functionality
1 parent 7fe08cd commit f9029e3

File tree

4 files changed

+57
-3
lines changed

4 files changed

+57
-3
lines changed

api/serializers/__init__.py

+3
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,6 @@
22
© Ocado Group
33
Created on 02/07/2024 at 12:00:12(+01:00).
44
"""
5+
6+
from .agreement_signature import AgreementSignatureSerializer
7+
from .contributor import ContributorSerializer

api/serializers/agreement_signature.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@
33

44
from ..models import AgreementSignature
55

6-
class ContributorSerializer(ModelSerializer[User, AgreementSignature]):
6+
7+
class AgreementSignatureSerializer(ModelSerializer[User, AgreementSignature]):
8+
""" """
9+
710
class Meta:
811
model = AgreementSignature
9-
fields = "__all__"
12+
fields = "__all__"

api/serializers/contributor.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@
33

44
from ..models import Contributor
55

6+
67
class ContributorSerializer(ModelSerializer[User, Contributor]):
8+
"""Contributor class"""
9+
710
class Meta:
811
model = Contributor
9-
fields = "__all__"
12+
fields = "__all__"

api/serializers/contributor_test.py

+45
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
"""
2+
© Ocado Group
3+
Created on 12/07/2024 at 11:36:23(+01:00).
4+
"""
5+
6+
from codeforlife.tests import ModelSerializerTestCase
7+
from codeforlife.user.models import User
8+
9+
from ..models import Contributor
10+
from .contributor import ContributorSerializer
11+
12+
13+
class TestContributorSerializer(ModelSerializerTestCase[User, Contributor]):
14+
"""Test the functionality of the serializers"""
15+
16+
model_serializer_class = ContributorSerializer
17+
18+
def setUp(self):
19+
self.data1 = {
20+
"id": 1,
21+
"email": "[email protected]",
22+
"name": "Cont One",
23+
"location": "London",
24+
"html_url": "http://github.com/cont1",
25+
"avatar_url": "https://testcont.github.io/gravatar-url-generator/",
26+
}
27+
28+
self.data2 = {
29+
"id": 2,
30+
"email": "[email protected]",
31+
"name": "Cont Two",
32+
"location": "London",
33+
"html_url": "http://github.com/cont2",
34+
"avatar_url": "https://cont2.github.io/gravatar-url-generator/",
35+
}
36+
37+
def test_create(self):
38+
"""Create a contributor"""
39+
self.assert_create(validated_data=self.data1, new_data=self.data1)
40+
41+
def test_create_list(self):
42+
"""List all contributor"""
43+
# expected = [self.data1, self.data2]
44+
self.assert_create(validated_data=self.data1, new_data=self.data1)
45+
self.assert_create(validated_data=self.data2, new_data=self.data2)

0 commit comments

Comments
 (0)