153 lines
4.7 KiB
Python
153 lines
4.7 KiB
Python
from api.test_utils import DefaultUserTestCase, create_client
|
|
from assignments.factories import AssignmentFactory, StudentSubmissionFactory
|
|
|
|
|
|
class MyAssignmentsTest(DefaultUserTestCase):
|
|
def setUp(self):
|
|
super(MyAssignmentsTest, self).setUp()
|
|
self.assignment = AssignmentFactory(owner=self.teacher)
|
|
|
|
self.submission1 = StudentSubmissionFactory(
|
|
student=self.student1, assignment=self.assignment
|
|
)
|
|
self.submission2 = StudentSubmissionFactory(
|
|
student=self.student2, assignment=self.assignment
|
|
)
|
|
|
|
self.client = create_client(self.student1)
|
|
|
|
def query_my_assignments(self):
|
|
query = """
|
|
query MyActivityQuery {
|
|
myActivity {
|
|
edges {
|
|
node {
|
|
id
|
|
title
|
|
slug
|
|
metaTitle
|
|
mySubmissions {
|
|
edges {
|
|
node {
|
|
id
|
|
text
|
|
assignment {
|
|
id
|
|
title
|
|
}
|
|
}
|
|
}
|
|
}
|
|
myAnswers {
|
|
edges {
|
|
node {
|
|
id
|
|
survey {
|
|
id
|
|
title
|
|
}
|
|
}
|
|
}
|
|
}
|
|
myContentBookmarks {
|
|
edges {
|
|
node {
|
|
id
|
|
uuid
|
|
note {
|
|
id
|
|
text
|
|
}
|
|
contentBlock {
|
|
id
|
|
type
|
|
contents
|
|
}
|
|
}
|
|
}
|
|
}
|
|
myChapterBookmarks {
|
|
edges {
|
|
node {
|
|
id
|
|
note {
|
|
id
|
|
text
|
|
}
|
|
chapter {
|
|
id
|
|
title
|
|
description
|
|
}
|
|
}
|
|
}
|
|
}
|
|
bookmark {
|
|
id
|
|
note {
|
|
id
|
|
text
|
|
}
|
|
module {
|
|
id
|
|
teaser
|
|
metaTitle
|
|
intro
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
myInstrumentActivity {
|
|
edges {
|
|
node {
|
|
id
|
|
title
|
|
contents
|
|
type {
|
|
id
|
|
type
|
|
category {
|
|
id
|
|
name
|
|
}
|
|
}
|
|
slug
|
|
bookmarks {
|
|
id
|
|
uuid
|
|
note {
|
|
id
|
|
text
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
"""
|
|
|
|
result = self.client.execute(query)
|
|
|
|
self.assertIsNone(result.get("errors"))
|
|
return result
|
|
|
|
@staticmethod
|
|
def get_content(result):
|
|
return result.get("data").get("myActivity").get("edges")
|
|
|
|
def test_my_assignment_query(self):
|
|
result = self.query_my_assignments()
|
|
contents = self.get_content(result)
|
|
self.assertEqual(len(contents), 1)
|
|
self.assertEquals(
|
|
contents[0]
|
|
.get("node")
|
|
.get("mySubmissions")
|
|
.get("edges")[0]
|
|
.get("node")
|
|
.get("text"),
|
|
self.submission1.text,
|
|
)
|