Add unit test for old classes query
This commit is contained in:
parent
229c6b4d8b
commit
442bab19bc
|
|
@ -0,0 +1,13 @@
|
|||
query OldClassesQuery {
|
||||
me {
|
||||
id
|
||||
oldClasses {
|
||||
edges {
|
||||
node {
|
||||
id
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -11,7 +11,7 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import gql from 'graphql-tag';
|
||||
import OLD_CLASSES_QUERY from '@/graphql/gql/oldClasses.gql';
|
||||
|
||||
import updateSelectedClassMixin from '@/mixins/updateSelectedClass';
|
||||
|
||||
|
|
@ -27,23 +27,10 @@
|
|||
}
|
||||
},
|
||||
|
||||
// todo: test this in front- and backend
|
||||
apollo: {
|
||||
me: {
|
||||
query: gql`
|
||||
query OldClassesQuery {
|
||||
me {
|
||||
id
|
||||
oldClasses {
|
||||
edges {
|
||||
node {
|
||||
id
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
`,
|
||||
query: OLD_CLASSES_QUERY,
|
||||
update(data) {
|
||||
return this.$getRidOfEdges(data).me;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,10 +11,12 @@ from django.conf import settings
|
|||
from django.test import TestCase, RequestFactory
|
||||
from graphene.test import Client
|
||||
from api.schema import schema
|
||||
from api.utils import get_graphql_query
|
||||
from core.factories import UserFactory
|
||||
from django.contrib.auth import authenticate
|
||||
|
||||
from users.factories import SchoolClassFactory
|
||||
from users.models import SchoolClassMember
|
||||
|
||||
|
||||
class MySchoolClasses(TestCase):
|
||||
|
|
@ -24,13 +26,17 @@ class MySchoolClasses(TestCase):
|
|||
self.class1 = SchoolClassFactory(users=[self.user, self.another_user])
|
||||
self.class2 = SchoolClassFactory(users=[self.user])
|
||||
self.class3 = SchoolClassFactory(users=[self.another_user])
|
||||
self.inactive_class = SchoolClassFactory(users=[self.user])
|
||||
|
||||
inactive_member = SchoolClassMember.objects.get(school_class=self.inactive_class)
|
||||
inactive_member.active = False
|
||||
inactive_member.save()
|
||||
|
||||
request = RequestFactory().get('/')
|
||||
request.user = self.user
|
||||
self.client = Client(schema=schema, context_value=request)
|
||||
|
||||
def make_query(self):
|
||||
|
||||
def test_user_sees_her_classes(self):
|
||||
query = '''
|
||||
query {
|
||||
me {
|
||||
|
|
@ -55,11 +61,8 @@ class MySchoolClasses(TestCase):
|
|||
}
|
||||
}
|
||||
'''
|
||||
return self.client.execute(query)
|
||||
|
||||
def test_user_sees_her_classes(self):
|
||||
|
||||
result = self.make_query()
|
||||
result = self.client.execute(query)
|
||||
|
||||
classes = result.get('data').get('me').get('schoolClasses').get('edges')
|
||||
self.assertEqual(len(classes), 2)
|
||||
|
|
@ -72,5 +75,12 @@ class MySchoolClasses(TestCase):
|
|||
elif school_class.get('name') == self.class2:
|
||||
self.fail('MySchoolClassTest:test_user_sees_her_classes: Class should not be in response')
|
||||
|
||||
def test_old_classes(self):
|
||||
query = get_graphql_query('oldClasses.gql')
|
||||
|
||||
result = self.client.execute(query)
|
||||
|
||||
old_classes = result.get('data').get('me').get('oldClasses').get('edges')
|
||||
self.assertEqual(len(old_classes), 1)
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue