def handle(self, *args, **options): lec = db_to_list(2) stud = db_to_list(3) for i in COURSE_NUM: # random names: # c.name = rand_word(12) # some real course names # c.name = random.sample(course_names, 1)[0] # c.save() c = Course(name=rand_word(11), start_date=calc_start_date(), end_date=calc_end_date()) try: c.lecturer = Lecturer.objects.get(id=random.sample(lec, 1)[0]) c.save() list_student_ids = rand_num_students(stud) for j in range(0, len(list_student_ids)): c.student.add(Student.objects.get(id=list_student_ids[j])) c.save() except BaseException: raise CommandError('Could not create course') self.stdout.write( self.style.SUCCESS( 'Successfully created testcourse with name {}'.format( c.name)))
def setUp(self): call_command('migrate') call_command('loadperms', 'groups.yml') self.my_admin = User.objects.create_superuser('admin', '*****@*****.**', 'admin123') self.client.force_login(self.my_admin) # create users to do stuff with in the tests lecturer_form = { 'username': '******', 'first_name': 'Test_fe_lecturer', 'last_name': 'Test_fe_lecturer', 'email': '*****@*****.**', 'password': '******', } response = self.client.post(reverse('createlecturer_admin_iframe'), lecturer_form) self.assertTrue(response.status_code, HTTPStatus.OK) self.assertTrue( Lecturer.objects.filter(username='******').exists()) student_form = { 'username': '******', 'first_name': 'Test_fe_student', 'last_name': 'Test_fe_student', 'email': '*****@*****.**', 'matr_nr': '42069', 'password': '******' } response = self.client.post(reverse('createstudent_admin_iframe'), student_form) self.assertTrue(response.status_code, HTTPStatus.OK) self.assertTrue( Student.objects.filter(username='******').exists()) # create a course to do stuff with in the test c = Course(name='test_course_fe', start_date='2021-08-08', end_date='2021-10-10') c.lecturer = Lecturer.objects.get(username='******') c.save() c.student.add(Student.objects.get(username='******')) c.save() self.assertTrue(Course.objects.filter(name='test_course_fe').exists()) # create an exercise to do stuff with in the tests e = Exercise( description='420 lodern Sie es!', start_time='2021-08-08 14:00:00', work_time_duration=parse_duration('0 days 00:10:00'), submission_deadline='2021-08-08 15:15:00', ) e.course = Course.objects.get(name='test_course_fe') e.save() self.assertTrue( Exercise.objects.filter(description='420 lodern Sie es!').exists())