Exemple #1
0
    def test_form_valid(self, mock_tz):
        mock_tz.now.return_value = datetime(
            2015, 6, 6, 12, 0, tzinfo=timezone.utc
            )
        form = UploadTimetableForm(data=self.form_data())

        self.assertTrue(form.is_valid())
Exemple #2
0
def upload_timetable_view(
        request, template_name="studioadmin/upload_timetable_form.html"):

    if request.method == 'POST':
        form = UploadTimetableForm(request.POST)
        if form.is_valid():
            start_date = form.cleaned_data['start_date']
            end_date = form.cleaned_data['end_date']
            session_ids = form.cleaned_data['sessions']

            created_classes, existing_classes = \
                utils.upload_timetable(
                    start_date, end_date, session_ids, request.user
                )
            context = {
                'start_date': start_date,
                'end_date': end_date,
                'created_classes': created_classes,
                'existing_classes': existing_classes,
                'sidenav_selection': 'upload_timetable'
            }
            return render(request,
                          'studioadmin/upload_timetable_confirmation.html',
                          context)
    else:
        form = UploadTimetableForm()
    return render(request, template_name, {
        'form': form,
        'sidenav_selection': 'upload_timetable'
    })
Exemple #3
0
def upload_timetable_view(request,
                          template_name="studioadmin/upload_timetable_form.html"):

    if request.method == 'POST':
        form = UploadTimetableForm(request.POST)
        if form.is_valid():
            start_date = form.cleaned_data['start_date']
            end_date = form.cleaned_data['end_date']
            session_ids = form.cleaned_data['sessions']

            created_classes, existing_classes = \
                utils.upload_timetable(
                    start_date, end_date, session_ids, request.user
                )
            context = {'start_date': start_date,
                       'end_date': end_date,
                       'created_classes': created_classes,
                       'existing_classes': existing_classes,
                       'sidenav_selection': 'upload_timetable'}
            return render(
                request, 'studioadmin/upload_timetable_confirmation.html',
                context
            )
    else:
        form = UploadTimetableForm()
    return render(request, template_name,
                  {'form': form, 'sidenav_selection': 'upload_timetable'})
Exemple #4
0
 def test_form_valid(self, mock_tz):
     mock_tz.now.return_value = datetime(2015,
                                         6,
                                         6,
                                         12,
                                         0,
                                         tzinfo=timezone.utc)
     form = UploadTimetableForm(data=self.form_data())
     self.assertTrue(form.is_valid())
Exemple #5
0
 def test_invalid_end_date_format(self, mock_tz):
     mock_tz.now.return_value = datetime(
         2015, 6, 6, 12, 0, tzinfo=timezone.utc
         )
     form = UploadTimetableForm(
         data=self.form_data({'end_date': 'Monday 15 June 2015'})
     )
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 1)
     self.assertIn('Invalid date format', str(form.errors['end_date']))
Exemple #6
0
 def test_start_date_in_past(self, mock_tz):
     mock_tz.now.return_value = datetime(
         2015, 6, 6, 12, 0, tzinfo=timezone.utc
         )
     form = UploadTimetableForm(
         data=self.form_data({'start_date': 'Mon 08 Jun 2000'})
     )
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 1)
     self.assertIn('Must be in the future', str(form.errors['start_date']))
Exemple #7
0
 def test_invalid_end_date_format(self, mock_tz):
     mock_tz.now.return_value = datetime(2015,
                                         6,
                                         6,
                                         12,
                                         0,
                                         tzinfo=timezone.utc)
     form = UploadTimetableForm(
         data=self.form_data({'end_date': 'Monday 15 June 2015'}))
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 1)
     self.assertIn('Invalid date format', str(form.errors['end_date']))
Exemple #8
0
 def test_start_date_in_past(self, mock_tz):
     mock_tz.now.return_value = datetime(2015,
                                         6,
                                         6,
                                         12,
                                         0,
                                         tzinfo=timezone.utc)
     form = UploadTimetableForm(
         data=self.form_data({'start_date': 'Mon 08 Jun 2000'}))
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 1)
     self.assertIn('Must be in the future', str(form.errors['start_date']))
Exemple #9
0
 def test_start_and_end_date_required(self, mock_tz):
     mock_tz.now.return_value = datetime(2015,
                                         6,
                                         6,
                                         12,
                                         0,
                                         tzinfo=timezone.utc)
     form = UploadTimetableForm(data={'sessions': [self.session.id]})
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 2)
     self.assertEquals(form.errors.get('start_date'),
                       ['This field is required.'])
     self.assertEquals(form.errors.get('end_date'),
                       ['This field is required.'])
Exemple #10
0
 def test_start_and_end_date_required(self, mock_tz):
     mock_tz.now.return_value = datetime(
         2015, 6, 6, 12, 0, tzinfo=timezone.utc
         )
     form = UploadTimetableForm(
         data={'sessions': [self.session.id]}
     )
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 2)
     self.assertEquals(
         form.errors.get('start_date'), ['This field is required.']
     )
     self.assertEquals(
         form.errors.get('end_date'), ['This field is required.']
     )
Exemple #11
0
 def test_end_date_before_start_date(self, mock_tz):
     mock_tz.now.return_value = datetime(
         2015, 6, 6, 12, 0, tzinfo=timezone.utc
         )
     form = UploadTimetableForm(
         data=self.form_data({
             'start_date': 'Tue 16 Jun 2015',
             'end_date': 'Mon 15 Jun 2015'
         })
     )
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 1)
     self.assertEquals(
         form.errors['end_date'],
         ['Cannot be before start date']
     )
Exemple #12
0
 def test_end_date_before_start_date(self, mock_tz):
     mock_tz.now.return_value = datetime(2015,
                                         6,
                                         6,
                                         12,
                                         0,
                                         tzinfo=timezone.utc)
     form = UploadTimetableForm(
         data=self.form_data({
             'start_date': 'Tue 16 Jun 2015',
             'end_date': 'Mon 15 Jun 2015'
         }))
     self.assertFalse(form.is_valid())
     self.assertEquals(len(form.errors), 1)
     self.assertEquals(form.errors['end_date'],
                       ['Cannot be before start date'])