Beispiel #1
0
 def test_settings_form_should_hide_directory_settings_if_no_directory_is_used(
         self):
     form = SettingsForm(self._create_settings_data())
     request = fake_request(path='')
     form.configure(request, None, edit=False)
     self.assertFalse(form.has_tab('Directory'))
     self.assertIsNone(form.fields.get('order_mode'))
Beispiel #2
0
 def test_settings_form(self):
     s = Settings()
     s.save()
     form = SettingsForm(self._create_settings_data(s))
     request = fake_request(path='')
     form.configure(request, s, edit=True)
     self.assertTrue(form.is_valid())
Beispiel #3
0
    def test_settings_form_without_child_page_choices_should_remove_pagination_fields(
            self, get_child_page_model_choices):
        get_child_page_model_choices.return_value = []

        form = SettingsForm(self._create_settings_data())
        request = fake_request(path='')
        form.configure(request, None, edit=False)
        self.assertFalse(form.has_tab('Pagination'))
        self.assertIsNone(form.fields.get('page_size'))
        self.assertIsNone(form.fields.get('max_page_size'))
Beispiel #4
0
 def test_settings_form_should_raise_error_if_closing_time_specified_without_opening_time(
         self):
     form = SettingsForm(
         self._create_settings_data(None,
                                    {'monday_close': datetime.time()}))
     request = fake_request(path='')
     form.configure(request, None, edit=False)
     self.assertFalse(form.is_valid())
     self.assertEqual(
         {'monday_start': [SettingsForm.ERROR_OPENING_TIME_REQUIRED]},
         form.errors)
Beispiel #5
0
 def test_settings_form_should_parse_page_size_as_integer(self):
     s = Settings()
     s.save()
     form = SettingsForm(
         self._create_settings_data(s, {
             'page_size': '10',
             'max_page_size': '100'
         }))
     request = fake_request(path='')
     form.configure(request, s, edit=True)
     self.assertTrue(form.is_valid())
     self.assertEqual(10, form.cleaned_data.get('page_size'))
     self.assertEqual(100, form.cleaned_data.get('max_page_size'))
Beispiel #6
0
 def _create_spf_test_form(self):
     s = Settings()
     s.save()
     form = SettingsForm(
         self._create_settings_data(
             s, {
                 'enquiry_email': '*****@*****.**',
                 'enquiry_from': '*****@*****.**',
                 'enquiry_reply': '*****@*****.**'
             }))
     factory = RequestFactory()
     request = factory.post('/')
     request.session = SessionStore()
     request._messages = FallbackStorage(request)
     form.configure(request, s, edit=True)
     return (request, form)
Beispiel #7
0
 def test_settings_form_should_raise_error_if_enquiry_email_and_reply_to_address_are_the_same(
         self):
     s = Settings()
     s.save()
     form = SettingsForm(
         self._create_settings_data(
             s, {
                 'enquiry_email': '*****@*****.**',
                 'enquiry_from': '*****@*****.**',
                 'enquiry_reply': '*****@*****.**'
             }))
     request = fake_request(path='')
     form.configure(request, s, edit=True)
     self.assertFalse(form.is_valid())
     self.assertFormFieldError(
         form, 'enquiry_from',
         SettingsForm.ERROR_FROM_EMAIL_CANNOT_BE_THE_SAME_AS_ENQUIRY_EMAIL)
Beispiel #8
0
 def test_settings_form_should_fail_if_max_page_size_it_lower_than_page_size(
         self):
     s = Settings()
     s.save()
     form = SettingsForm(
         self._create_settings_data(s, {
             'page_size': '10',
             'max_page_size': '5'
         }))
     request = fake_request(path='')
     form.configure(request, s, edit=True)
     self.assertFalse(form.is_valid())
     self.assertEqual(
         {
             'max_page_size':
             ['Max. page size needs to be at least the page size of 10.']
         }, form.errors)
Beispiel #9
0
 def test_settings_form_should_raise_error_if_closing_time_is_before_opening_time(
         self):
     form = SettingsForm(
         self._create_settings_data(
             None, {
                 'monday_start': datetime.time(17, 0, 0),
                 'monday_close': datetime.time(9, 0, 0)
             }))
     request = fake_request(path='')
     form.configure(request, None, edit=False)
     self.assertFalse(form.is_valid())
     self.assertEqual(
         {
             'monday_start': [
                 SettingsForm.
                 ERROR_OPENING_TIME_MUST_COME_BEFORE_CLOSING_TIME
             ]
         }, form.errors)