Skip to content

Commit b6b5650

Browse files
committed
added test case for fetch children
1 parent 686f949 commit b6b5650

File tree

2 files changed

+29
-4
lines changed

2 files changed

+29
-4
lines changed

backend/family_tree/student/schema.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ class Meta:
1111

1212
class Query(graphene.ObjectType):
1313
students=graphene.List(StudentType)
14-
children=graphene.List(StudentType, parent_id=graphene.String())
14+
children=graphene.List(StudentType, parentId=graphene.String())
1515
student_path= graphene.List(StudentType, roll=graphene.String())
1616

1717
def resolve_students(root,info):
1818
return Student.objects.all()
1919

20-
def resolve_children(parent_id):
21-
return Student.objects.filter(parentId=parent_id)
20+
def resolve_children(root, info, parentId):
21+
return Student.objects.filter(parentId=parentId)
2222

2323
def resolve_student_path(root, info, roll):
2424
pathObjects=[]

backend/family_tree/student/tests.py

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
11
from django.test import TestCase
2+
from graphene_django.utils.testing import GraphQLTestCase
3+
import json
4+
from student.models import Student
5+
from mixer.backend.django import mixer
26

3-
# Create your tests here.
7+
8+
class StudentTestCases(GraphQLTestCase):
9+
GRAPHQL_URL = 'http://localhost/graphql'
10+
def setUp(self):
11+
super().setUp()
12+
self.student1 = mixer.blend(Student, roll_no="B20AI014", parentId="B20AI100", name="Jaimin")
13+
self.student2 = mixer.blend(Student, roll_no="B20AI100")
14+
student2_roll_no = self.student2.roll_no
15+
16+
def test_children_query(self):
17+
response = self.query( '''
18+
query {
19+
children(parentId: "B20AI100"){
20+
rollNo
21+
name
22+
}
23+
}
24+
''' )
25+
26+
content = json.loads(response.content)
27+
self.assertResponseNoErrors(response)
28+
self.assertDictEqual(content['data']['children'][0], {'rollNo': 'B20AI014', 'name': 'Jaimin'})

0 commit comments

Comments
 (0)