Пример #1
0
    def test_group_invite(self):
        """Tests group nitpicky invitation behavior"""
        admin = models.User(email=['*****@*****.**']).put().get()
        student = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin).put().get()
        assignment = make_fake_assignment(course, admin).put().get()
        group = make_fake_group(assignment, admin, student).put().get()

        self.assertIn('is not a valid user', group.invite('*****@*****.**'))
        self.assertIn('is not enrolled in', group.invite(student.email[0]))

        group.invited = [student.key]
        models.Participant.add_role(student.key, course.key, constants.STUDENT_ROLE)
        self.assertIn('has already been invited', group.invite(student.email[0]))

        group.invited = []
        self.assertIn('is already in the group', group.invite(student.email[0]))

        assignment.max_group_size = 2
        assignment.put()
        student2 = models.User(email=['*****@*****.**']).put().get()
        models.Participant.add_role(student2.key, course.key, constants.STUDENT_ROLE)
        self.assertEqual(2, group.assignment.get().max_group_size)
        self.assertEqual(2, len(group.member))
        self.assertEqual('The group is full', group.invite(student2.email[0]))
Пример #2
0
 def test_group_lookup_or_create(self):
     """TEsts that group lookup_or_create works"""
     admin = models.User(email=['*****@*****.**']).put().get()
     student = models.User(email=['*****@*****.**']).put().get()
     course = make_fake_course(admin)
     assignment = make_fake_assignment(course, admin).put().get()
     models.Group._lookup_or_create(student.key, assignment.key)
Пример #3
0
 def test_group_lookup_or_create(self):
     """TEsts that group lookup_or_create works"""
     admin = models.User(email=['*****@*****.**']).put().get()
     student = models.User(email=['*****@*****.**']).put().get()
     course = make_fake_course(admin)
     assignment = make_fake_assignment(course, admin).put().get()
     models.Group._lookup_or_create(student.key, assignment.key)
Пример #4
0
    def test_participant_can(self):
        """Tests that all users can get, and that only staff can index"""
        get = Need('get')
        self.assertTrue(models.Participant._can(None, get, None, None))

        need = Need('index')
        student = models.User(email=['*****@*****.**']).put().get()
        admin = models.User(email=['*****@*****.**']).put().get()

        course = make_fake_course(student)

        models.Participant.add_role(
            student.key, course.key, constants.STUDENT_ROLE)
        models.Participant.add_role(
            admin.key, course.key, constants.STAFF_ROLE)

        query = models.Participant.query()

        results = models.Participant._can(student, need, course, query).fetch()
        self.assertNotEqual(None, results)
        self.assertEqual(1, len(results))

        results = models.Participant._can(admin, need, course, query).fetch()
        self.assertNotEqual(None, results)
        self.assertEqual(2, len(results))
Пример #5
0
    def test_participant_can(self):
        """Tests that all users can get, and that only staff can index"""
        get = Need('get')
        self.assertTrue(models.Participant._can(None, get, None, None))

        need = Need('index')
        student = models.User(email=['*****@*****.**']).put().get()
        admin = models.User(email=['*****@*****.**']).put().get()

        course = make_fake_course(student)

        models.Participant.add_role(student.key, course.key,
                                    constants.STUDENT_ROLE)
        models.Participant.add_role(admin.key, course.key,
                                    constants.STAFF_ROLE)

        query = models.Participant.query()

        results = models.Participant._can(student, need, course, query).fetch()
        self.assertNotEqual(None, results)
        self.assertEqual(1, len(results))

        results = models.Participant._can(admin, need, course, query).fetch()
        self.assertNotEqual(None, results)
        self.assertEqual(2, len(results))
Пример #6
0
    def test_group_invite(self):
        """Tests group nitpicky invitation behavior"""
        admin = models.User(email=['*****@*****.**']).put().get()
        student = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin).put().get()
        assignment = make_fake_assignment(course, admin).put().get()
        group = make_fake_group(assignment, admin, student).put().get()

        self.assertIn('is not a valid user', group.invite('*****@*****.**'))
        self.assertIn('is not enrolled in', group.invite(student.email[0]))

        group.invited = [student.key]
        models.Participant.add_role(student.key, course.key,
                                    constants.STUDENT_ROLE)
        self.assertIn('has already been invited',
                      group.invite(student.email[0]))

        group.invited = []
        self.assertIn('is already in the group',
                      group.invite(student.email[0]))

        assignment.max_group_size = 2
        assignment.put()
        student2 = models.User(email=['*****@*****.**']).put().get()
        models.Participant.add_role(student2.key, course.key,
                                    constants.STUDENT_ROLE)
        self.assertEqual(2, group.assignment.get().max_group_size)
        self.assertEqual(2, len(group.member))
        self.assertEqual('The group is full', group.invite(student2.email[0]))
Пример #7
0
    def test_get_final_w_revision(self):
        """"""
        admin = models.User(email=['*****@*****.**']).put().get()
        student = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin)
        assignment = make_fake_assignment(course, admin)
        assignment.revision = True
        assignment.put().get()

        backup = models.Backup(
            submitter=student.key, assignment=assignment.key).put()
        revision = models.Backup(
            submitter=student.key, assignment=assignment.key).put()
        submission = models.Submission(backup=backup).put()
        revision = models.Submission(backup=backup).put()
        models.FinalSubmission(
            submitter=student.key,
            assignment=assignment.key,
            group=make_fake_group(assignment, admin, student).key,
            submission=submission).put().get()

        self.assertEqual(revision.get().mark_as_final().get().revision,
                         revision)
        # Make sure the original submission is retained.
        self.assertEqual(revision.get().mark_as_final().get().submission,
                         submission)
Пример #8
0
	def setUp(self):
		super(URLsUnitTest, self).setUp()
		self.accounts = self.get_accounts()
		for user in self.accounts.values():
			user.put()
		self._course = make_fake_course(self.accounts['admin'])
		self._course.put()
		self.user = None
Пример #9
0
	def get_basic_instance(self, mutate=True):
		name = 'testcourse'
		if mutate:
			name += str(self.num)
			self.num += 1
		rval = make_fake_course(self.user)
		rval.name = name
		return rval
Пример #10
0
 def get_basic_instance(self, mutate=True):
     name = "testcourse"
     if mutate:
         name += str(self.num)
         self.num += 1
     rval = make_fake_course(self.user)
     rval.name = name
     return rval
Пример #11
0
 def test_group_lookup_by_assignment(self):
     """Test lookup by assignment"""
     admin = models.User(email=['*****@*****.**']).put().get()
     student = models.User(email=['*****@*****.**']).put().get()
     course = make_fake_course(admin)
     assignment = make_fake_assignment(course, admin).put().get()
     group = make_fake_group(assignment, admin, student).put()
     groups = models.Group.lookup_by_assignment(assignment)
     self.assertIn(group, [g.key for g in groups])
Пример #12
0
	def setUp(self):
		super(GroupAPITest, self).setUp()
		self.course = make_fake_course(self.user)
		self.course.put()
		self.assignment = make_fake_assignment(self.course, self.user)
		self.assignment.put()
		for student_name in [a for a in self.accounts if 'student' in a]:
			s = self.accounts[student_name]
			models.Participant.add_role(s, self.course, constants.STUDENT_ROLE)
Пример #13
0
 def test_group_lookup_by_assignment(self):
     """Test lookup by assignment"""
     admin = models.User(email=['*****@*****.**']).put().get()
     student = models.User(email=['*****@*****.**']).put().get()
     course = make_fake_course(admin)
     assignment = make_fake_assignment(course, admin).put().get()
     group = make_fake_group(assignment, admin, student).put()
     groups = models.Group.lookup_by_assignment(assignment)
     self.assertIn(group, [g.key for g in groups])
Пример #14
0
 def test_course_get_students_function(self):
     """Tests that get_students works"""
     student_key = models.User(email=['*****@*****.**']).put()
     course = make_fake_course(student_key.get())
     models.Participant.add_role(
         student_key, course.key, constants.STUDENT_ROLE)
     enrollment = course.get_students(student_key)
     students = [student.user for student in enrollment]
     self.assertIn(student_key, students)
Пример #15
0
 def setUp(self):
   super(GroupAPITest, self).setUp()
   self.course = make_fake_course(self.user)
   self.course.put()
   self.assignment = make_fake_assignment(self.course, self.user)
   self.assignment.put()
   for student_name in [a for a in self.accounts if 'student' in a]:
     s = self.accounts[student_name]
     models.Participant.add_role(s, self.course, constants.STUDENT_ROLE)
Пример #16
0
 def test_course_get_students_function(self):
     """Tests that get_students works"""
     student_key = models.User(email=['*****@*****.**']).put()
     course = make_fake_course(student_key.get())
     models.Participant.add_role(student_key, course.key,
                                 constants.STUDENT_ROLE)
     enrollment = course.get_students(student_key)
     self.assertTrue(isinstance(enrollment, list))
     students = [student.user for student in enrollment]
     self.assertIn(student_key, students)
Пример #17
0
    def setUp(self):
        BaseTestCase.setUp(self)
        self._caught_exception = None
        self.user = self.get_basic_user()
        self.admin = models.User(email=['*****@*****.**'], is_admin=True)
        self.admin.put()

        self.course = make_fake_course(self.admin)
        self.course.put()
        self.assign = make_fake_assignment(self.course, self.admin)
        self.assign.put()
Пример #18
0
    def setUp(self):
        BaseTestCase.setUp(self)
        self._caught_exception = None
        self.user = self.get_basic_user()
        self.admin = models.User(email=['*****@*****.**'], is_admin=True)
        self.admin.put()

        self.course = make_fake_course(self.admin)
        self.course.put()
        self.assign = make_fake_assignment(self.course, self.admin)
        self.assign.put()
Пример #19
0
    def get_basic_instance(self, mutate=True):
        name = 'proj'
        if mutate:
            name += str(self.num)
            self.num += 1

        self._course = make_fake_course(self.user)
        self._course.put()
        self.enroll_accounts(self._course)
        self._assignment = make_fake_assignment(self._course, self.user)
        self._assignment.name = name
        return self._assignment
Пример #20
0
	def setUp(self):
		super(SearchAPITest, self).setUp()
		self.assignment_name = 'Hog Project'
		self.user = self.accounts['dummy_student2']
		self._course = make_fake_course(self.user)
		self._course.put()
		self._assign = make_fake_assignment(self._course, self.user)
		self._assign.name = self._assign.display_name = self.assignment_name
		self._assign.put()
		self._backup = make_fake_backup(self._assign, self.user)
		self._submission = make_fake_submission(self._backup)
		self._finalsubmission = make_fake_finalsubmission(self._submission, self._assign, self.user)
    def get_basic_instance(self, mutate=True):
        name = 'proj'
        if mutate:
            name += str(self.num)
            self.num += 1

        self._course = make_fake_course(self.user)
        self._course.put()
        self.enroll_accounts(self._course)
        self._assignment = make_fake_assignment(self._course, self.user)
        self._assignment.name = name
        return self._assignment
Пример #22
0
    def setUp(self):
        super(AutoUpdateTest, self).setUp()
        due_date = datetime.datetime.now() + datetime.timedelta(days=2)
        self.user = models.User.get_or_insert('*****@*****.**')

        self.course = make_fake_course(self.user)
        self.course.put()

        self.assignment = make_fake_assignment(self.course, self.user)
        self.assignment.put()

        self.version = models.Version.get_or_insert('ok', base_url="https://www.baseurl.com")
        self.invalid = False
 def setUp(self):
     super(SearchAPITest, self).setUp()
     self.assignment_name = 'Hog Project'
     self.user = self.accounts['dummy_student2']
     self._course = make_fake_course(self.user)
     self._course.put()
     self._assign = make_fake_assignment(self._course, self.user)
     self._assign.name = self._assign.display_name = self.assignment_name
     self._assign.put()
     self._backup = make_fake_backup(self._assign, self.user)
     self._submission = make_fake_submission(self._backup)
     self._finalsubmission = make_fake_finalsubmission(
         self._submission, self._assign, self.user)
Пример #24
0
 def setUp(self):
     super(QueueAPITest, self).setUp()
     self.user = self.accounts['dummy_admin']
     self.staff = self.accounts['dummy_staff']
     self.user1 = self.accounts['dummy_student']
     self.user2 = self.accounts['dummy_student2']
     self.user3 = self.accounts['dummy_student3']
     self.assignment_name = 'Hog Project'
     self._course = make_fake_course(self.user)
     self._course.put()
     self._assign = make_fake_assignment(self._course, self.user)
     self._assign.name = self._assign.display_name = self.assignment_name
     self._assign.put()
Пример #25
0
    def setUp(self):
        super(BackupAPITest, self).setUp()
        self.assignment_name = u'test assignment'
        self._course = make_fake_course(self.user)
        self._course.put()
        self._assign = make_fake_assignment(self._course, self.user)
        self._assign.name = self.assignment_name
        self._assign.put()

        self._submitter = self.accounts['dummy_student']
        self._submitter.put()
        self.logout()
        self.login('dummy_student')
Пример #26
0
	def setUp(self):
		super(BackupAPITest, self).setUp()
		self.assignment_name = u'test assignment'
		self._course = make_fake_course(self.user)
		self._course.put()
		self._assign = make_fake_assignment(self._course, self.user)
		self._assign.name = self.assignment_name
		self._assign.put()

		self._submitter = self.accounts['dummy_student']
		self._submitter.put()
		self.logout()
		self.login('dummy_student')
Пример #27
0
 def setUp(self):
     super(UtilsTestCase, self).setUp()
     self.user = self.accounts['dummy_admin']
     self.user1 = self.accounts['dummy_student']
     self.user2 = self.accounts['dummy_student2']
     self.user3 = self.accounts['dummy_student3']
     self.assignment_name = 'Hog Project'
     self._course = make_fake_course(self.user)
     self._course.put()
     self._assign = make_fake_assignment(self._course, self.user)
     self._assign.name = self._assign.display_name = self.assignment_name
     self._assign.put()
     self._backup = make_fake_backup(self._assign, self.user2)
     self._submission = make_fake_submission(self._backup)
Пример #28
0
    def test_backup_index(self):
        """Tests permissions for backup"""
        admin = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin)
        models.Participant.add_role(admin.key, course.key,
                                    constants.STAFF_ROLE)

        index = Need('index')
        assignment = make_fake_assignment(course, admin)
        backup = models.Backup(submitter=admin.key,
                               assignment=assignment.key).put().get()
        query = models.Backup.query()
        self.assertNotEqual(False,
                            models.Backup._can(admin, index, backup, query))
Пример #29
0
	def setUp(self):
		super(UtilsTestCase, self).setUp()
		self.user = self.accounts['dummy_admin']
		self.user1 = self.accounts['dummy_student']
		self.user2 = self.accounts['dummy_student2']
		self.user3 = self.accounts['dummy_student3']
		self.assignment_name = 'Hog Project'
		self._course = make_fake_course(self.user)
		self._course.put()
		self._assign = make_fake_assignment(self._course, self.user)
		self._assign.name = self._assign.display_name = self.assignment_name
		self._assign.put()
		self._backup = make_fake_backup(self._assign, self.user2)
		self._submission = make_fake_submission(self._backup)
Пример #30
0
    def test_backup_index(self):
        """Tests permissions for backup"""
        admin = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin)
        models.Participant.add_role(
            admin.key, course.key, constants.STAFF_ROLE)

        index = Need('index')
        assignment = make_fake_assignment(course, admin)
        backup = models.Backup(
            submitter=admin.key, assignment=assignment.key).put().get()
        query = models.Backup.query()
        self.assertNotEqual(
            False, models.Backup._can(admin, index, backup, query))
Пример #31
0
    def setUp(self):
        super(AutoUpdateTest, self).setUp()
        due_date = datetime.datetime.now() + datetime.timedelta(days=2)
        self.user = models.User.get_or_insert('*****@*****.**')

        self.course = make_fake_course(self.user)
        self.course.put()

        self.assignment = make_fake_assignment(self.course, self.user)
        self.assignment.put()

        self.version = models.Version.get_or_insert(
            'ok', base_url="https://www.baseurl.com")
        self.invalid = False
Пример #32
0
 def setUp(self):
     super(AnalyticsAPITest, self).setUp()
     self.user = self.accounts["dummy_admin"]
     self.user1 = self.accounts["dummy_student"]
     self.user2 = self.accounts["dummy_student2"]
     self.user3 = self.accounts["dummy_student3"]
     self.assignment_name = "Hog Project"
     self._course = make_fake_course(self.user)
     self._course.put()
     self._assign = make_fake_assignment(self._course, self.user)
     self._assign.name = self._assign.display_name = self.assignment_name
     self._assign.put()
     self._backup = make_fake_backup(self._assign, self.user2)
     self._submission = make_fake_submission(self._backup)
     self._finalsubmission = make_fake_finalsubmission(self._submission, self._assign, self.user2)
Пример #33
0
    def test_get_final(self):
        """Test get_final"""
        admin = models.User(email=['*****@*****.**']).put().get()
        student = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin)
        assignment = make_fake_assignment(course, admin).put().get()

        backup = models.Backup(submitter=student.key,
                               assignment=assignment.key).put()
        submission = models.Submission(backup=backup).put()
        fsubm = models.FinalSubmission(submitter=student.key,
                                       assignment=assignment.key,
                                       group=make_fake_group(
                                           assignment, admin, student).key,
                                       submission=submission).put().get()
        self.assertEqual(fsubm, submission.get().get_final())
Пример #34
0
    def test_get_final_wo_final(self):
        """"""
        admin = models.User(email=['*****@*****.**']).put().get()
        student = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin)
        assignment = make_fake_assignment(course, admin)
        assignment.revision = True
        assignment.put().get()

        group = make_fake_group(assignment, admin, student).put()

        backup = models.Backup(submitter=student.key,
                               assignment=assignment.key).put()
        submission = models.Submission(backup=backup).put()

        self.assertEqual(submission.get().mark_as_final().get().group, group)
Пример #35
0
    def test_get_final(self):
        """Test get_final"""
        admin = models.User(email=['*****@*****.**']).put().get()
        student = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin)
        assignment = make_fake_assignment(course, admin).put().get()

        backup = models.Backup(
            submitter=student.key, assignment=assignment.key).put()
        submission = models.Submission(backup=backup).put()
        fsubm = models.FinalSubmission(
            submitter=student.key,
            assignment=assignment.key,
            group=make_fake_group(assignment, admin, student).key,
            submission=submission).put().get()
        self.assertEqual(fsubm, submission.get().get_final())
Пример #36
0
    def test_get_final_wo_final(self):
        """"""
        admin = models.User(email=['*****@*****.**']).put().get()
        student = models.User(email=['*****@*****.**']).put().get()
        course = make_fake_course(admin)
        assignment = make_fake_assignment(course, admin)
        assignment.revision = True
        assignment.put().get()

        group = make_fake_group(assignment, admin, student).put()

        backup = models.Backup(
            submitter=student.key, assignment=assignment.key).put()
        submission = models.Submission(backup=backup).put()

        self.assertEqual(submission.get().mark_as_final().get().group,
                         group)
Пример #37
0
 def setUp(self):
     super(AssignmentAPITest, self).setUp()
     self.user = self.accounts["dummy_admin"]
     self.user1 = self.accounts["dummy_student"]
     self.user2 = self.accounts["dummy_student2"]
     self.user3 = self.accounts["dummy_student3"]
     self.assignment_name = "Hog Project"
     self._course = make_fake_course(self.user)
     self._course.put()
     self._assign = make_fake_assignment(self._course, self.user)
     self._assign.autograding_enabled = True
     self._assign.autograding_key = "NotReallyAnAutograderKey"
     self._assign.name = self._assign.display_name = self.assignment_name
     self._assign.put()
     self._group = make_fake_group(self._assign, self.user1, self.user2)
     self._backup = make_fake_backup(self._assign, self.user2)
     self._submission = make_fake_submission(self._backup)
     self._finalsubmission = make_fake_finalsubmission(self._submission, self._assign, self.user2)
Пример #38
0
	def setUp(self):
		super(SubmissionAPITest, self).setUp()
		self.user = self.accounts['dummy_admin']
		self.user1 = self.accounts['dummy_student']
		self.user2 = self.accounts['dummy_student2']
		self.user3 = self.accounts['dummy_student3']
		self.assignment_name = 'Hog Project'
		self._course = make_fake_course(self.user)
		self._course.put()
		self._assign = make_fake_assignment(self._course, self.user)
		self._assign.name = self._assign.display_name = self.assignment_name
		self._assign.put()
		self._backup = make_fake_backup(self._assign, self.user2)
		self._submission = make_fake_submission(self._backup)
		self._finalsubmission = make_fake_finalsubmission(self._submission, self._assign, self.user2)
		self._score = models.Score(score=2).put()
		self._submission.score = [self._score.get()]
		self._submission.put()
Пример #39
0
 def setUp(self):
     super(SubmissionAPITest, self).setUp()
     self.user = self.accounts["dummy_admin"]
     self.user1 = self.accounts["dummy_student"]
     self.user2 = self.accounts["dummy_student2"]
     self.user3 = self.accounts["dummy_student3"]
     self.assignment_name = "Hog Project"
     self._course = make_fake_course(self.user)
     self._course.put()
     self._assign = make_fake_assignment(self._course, self.user)
     self._assign.name = self._assign.display_name = self.assignment_name
     self._assign.put()
     self._backup = make_fake_backup(self._assign, self.user2)
     self._submission = make_fake_submission(self._backup)
     self._finalsubmission = make_fake_finalsubmission(self._submission, self._assign, self.user2)
     self._score = models.Score(score=2, tag="composition").put()
     self._submission.score = [self._score.get()]
     self._submission.put()
 def setUp(self):
     super(AssignmentAPITest, self).setUp()
     self.user = self.accounts['dummy_admin']
     self.user1 = self.accounts['dummy_student']
     self.user2 = self.accounts['dummy_student2']
     self.user3 = self.accounts['dummy_student3']
     self.assignment_name = 'Hog Project'
     self._course = make_fake_course(self.user)
     self._course.put()
     self._assign = make_fake_assignment(self._course, self.user)
     self._assign.autograding_enabled = True
     self._assign.name = self._assign.display_name = self.assignment_name
     self._assign.put()
     self._group = make_fake_group(self._assign, self.user1, self.user2)
     self._backup = make_fake_backup(self._assign, self.user2)
     self._submission = make_fake_submission(self._backup)
     self._finalsubmission = make_fake_finalsubmission(
         self._submission, self._assign, self.user2)
Пример #41
0
    def test_assignment_comparator(self):
        """Tests that assignments can be compared like numbers... by due date"""
        creator_key = models.User(email=['*****@*****.**']).put()
        course = make_fake_course(creator_key.get())
        assignment1 = make_fake_assignment(course, creator_key.get())
        assignment2 = models.Assignment(name='hw1',
                                        points=3,
                                        display_name="CS 61A",
                                        templates="[]",
                                        course=course.key,
                                        creator=creator_key,
                                        max_group_size=4,
                                        due_date=datetime.datetime.now() +
                                        datetime.timedelta(days=3))
        self.assertTrue(assignment2 < assignment1)
        self.assertFalse(assignment1 < assignment2)

        lst = [assignment1, assignment2]
        lst = sorted(lst)
        self.assertEqual(lst, [assignment2, assignment1])
Пример #42
0
    def test_assignment_comparator(self):
        """Tests that assignments can be compared like numbers... by due date"""
        creator_key = models.User(email=['*****@*****.**']).put()
        course = make_fake_course(creator_key.get())
        assignment1 = make_fake_assignment(course, creator_key.get())
        assignment2 = models.Assignment(
            name='hw1',
            points=3,
            display_name="CS 61A",
            templates="[]",
            course=course.key,
            creator=creator_key,
            max_group_size=4,
            due_date=datetime.datetime.now() + datetime.timedelta(days=3))
        self.assertTrue(assignment2 < assignment1)
        self.assertFalse(assignment1 < assignment2)

        lst = [assignment1, assignment2]
        lst = sorted(lst)
        self.assertEqual(lst, [assignment2, assignment1])
Пример #43
0
 def test_course_get_students_basic(self):
     """Tests that get_students functions"""
     student_key = models.User(email=['*****@*****.**']).put()
     course = make_fake_course(student_key.get())
     students = course.get_students(student_key)
     self.assertTrue(isinstance(students, list))
Пример #44
0
 def test_course_get_students_basic(self):
     """Tests that get_students functions"""
     student_key = models.User(email=['*****@*****.**']).put()
     course = make_fake_course(student_key.get())
     students = course.get_students(student_key)
     self.assertTrue(isinstance(students, list))