コード例 #1
0
ファイル: test_extension.py プロジェクト: youenn98/ok
 def test_edit_extension(self):
     ext = self._make_ext(self.assignment, self.user1)
     self.login(self.staff1.email)
     expires = (dt.datetime.utcnow() + dt.timedelta(days=3)).strftime(
         constants.ISO_DATETIME_FMT)
     custom_submission_time = dt.datetime.utcnow().strftime(
         constants.ISO_DATETIME_FMT)
     message = 'Sickness'
     data = {
         'assignment_id': self.assignment.id,
         'email': self.user1.email,
         'expires': expires,
         'reason': message,
         'submission_time': 'other',
         'custom_submission_time': custom_submission_time
     }
     self.assert200(
         self.client.post('/admin/course/{}/extensions/{}'.format(
             self.course.id, utils.encode_id(ext.id)),
                          data=data,
                          follow_redirects=True))
     extension = Extension.get_extension(self.user1,
                                         self.assignment,
                                         time=dt.datetime.utcnow())
     self.assertEqual(extension.staff_id, self.staff1.id)
     self.assertEqual(extension.assignment_id, self.assignment.id)
     self.assertEqual(extension.message, message)
     self.assertEqual(
         utils.local_time_obj(extension.expires,
                              self.course).replace(tzinfo=None),
         dt.datetime.strptime(expires, '%Y-%m-%d %H:%M:%S'))
     self.assertEqual(
         utils.local_time_obj(extension.custom_submission_time,
                              self.course).replace(tzinfo=None),
         dt.datetime.strptime(custom_submission_time, '%Y-%m-%d %H:%M:%S'))
コード例 #2
0
ファイル: forms.py プロジェクト: Cal-CS-61A-Staff/ok
 def __init__(self, course, obj=None, **kwargs):
     self.course = course
     self.obj = obj
     super(AssignmentForm, self).__init__(obj=obj, **kwargs)
     if obj:
         if obj.due_date == self.due_date.data:
             self.due_date.data = utils.local_time_obj(obj.due_date, course)
         if obj.lock_date == self.lock_date.data:
             self.lock_date.data = utils.local_time_obj(obj.lock_date, course)
コード例 #3
0
ファイル: forms.py プロジェクト: addcninblue/ok
 def __init__(self, course, obj=None, **kwargs):
     self.course = course
     self.obj = obj
     super(AssignmentForm, self).__init__(obj=obj, **kwargs)
     if obj:
         if obj.due_date == self.due_date.data:
             self.due_date.data = utils.local_time_obj(obj.due_date, course)
         if obj.lock_date == self.lock_date.data:
             self.lock_date.data = utils.local_time_obj(
                 obj.lock_date, course)
コード例 #4
0
ファイル: forms.py プロジェクト: Cal-CS-61A-Staff/ok
 def set_submission_time(self, backup):
     assignment = backup.assignment
     time = backup.custom_submission_time
     if time is None:
         self.submission_time.data = "none"
     elif time == assignment.due_date - dt.timedelta(seconds=1):
         self.submission_time.data = "deadline"
     elif time == assignment.due_date - dt.timedelta(days=1, seconds=1):
         self.submission_time.data = "early"
     else:
         self.submission_time.data = "other"
         self.custom_submission_time.data = utils.local_time_obj(time, assignment.course)
コード例 #5
0
ファイル: test_extension.py プロジェクト: Cal-CS-61A-Staff/ok
 def test_edit_extension(self):
     ext = self._make_ext(self.assignment, self.user1)
     self.login(self.staff1.email)
     expires = (dt.datetime.utcnow() + dt.timedelta(days=3)).strftime(constants.ISO_DATETIME_FMT)
     custom_submission_time = dt.datetime.utcnow().strftime(constants.ISO_DATETIME_FMT)
     message = 'Sickness'
     data = {
         'assignment_id': self.assignment.id,
         'email': self.user1.email,
         'expires': expires,
         'reason': message,
         'submission_time': 'other',
         'custom_submission_time': custom_submission_time
     }
     self.assert200(self.client.post('/admin/course/{}/extensions/{}'.format(self.course.id, utils.encode_id(ext.id)),
                     data=data, follow_redirects=True))
     extension = Extension.get_extension(self.user1, self.assignment, time=dt.datetime.utcnow())
     self.assertEqual(extension.staff_id, self.staff1.id)
     self.assertEqual(extension.assignment_id, self.assignment.id)
     self.assertEqual(extension.message, message)
     self.assertEqual(utils.local_time_obj(extension.expires, self.course).replace(tzinfo=None), dt.datetime.strptime(expires, '%Y-%m-%d %H:%M:%S'))
     self.assertEqual(utils.local_time_obj(extension.custom_submission_time, self.course).replace(tzinfo=None), dt.datetime.strptime(custom_submission_time, '%Y-%m-%d %H:%M:%S'))
コード例 #6
0
ファイル: forms.py プロジェクト: addcninblue/ok
 def set_submission_time(self, backup):
     assignment = backup.assignment
     time = backup.custom_submission_time
     if time is None:
         self.submission_time.data = 'none'
     elif time == assignment.due_date - dt.timedelta(seconds=1):
         self.submission_time.data = 'deadline'
     elif time == assignment.due_date - dt.timedelta(days=1, seconds=1):
         self.submission_time.data = 'early'
     else:
         self.submission_time.data = 'other'
         self.custom_submission_time.data = utils.local_time_obj(
             time, assignment.course)