Example #1
0
    def test_get_suberror_ctor(self):
        from ptah.form import Invalid

        serr = Invalid(name='test')

        err = Invalid(errors=[serr])
        self.assertIs(err['test'], serr)
Example #2
0
    def test_get_set_suberror(self):
        from ptah.form import Invalid

        err = Invalid()

        serr = Invalid()
        err['test'] = serr

        self.assertIn('test', err)
        self.assertIs(err['test'], serr)
        self.assertEqual(serr.name, 'test')
Example #3
0
    def test_ctor(self):
        from ptah.form import Invalid

        field = object()
        serror = Invalid('suberr', name='serror')

        err = Invalid('test', field, {'1': '2'}, 'err_name', [serror])
        self.assertEqual(err.msg, 'test')
        self.assertIs(err.field, field)
        self.assertEqual(err.mapping, {'1': '2'})
        self.assertEqual(err.name, 'err_name')
        self.assertEqual(err.errors, {'serror': serror})
Example #4
0
    def test_form_errors(self):
        from ptah.form import Invalid, TextField
        from ptah.form.form import FormErrorMessage
        request = DummyRequest()

        form_errors = FormErrorMessage(request)

        err1 = Invalid(None, 'Error1')
        err2 = Invalid(None, 'Error2')

        err2.field = TextField('text')

        res = form_errors.render([err1, err2])
        self.assertIn('Error1', res)
        self.assertNotIn('Error2', res)
        self.assertIn('Please fix indicated errors.', res)
Example #5
0
    def test_str_field_no_req(self):
        from ptah.form import Invalid, Field

        err = Invalid('${val} message',
                      Field(name='test'),
                      mapping={'val': 'Error'})
        self.assertEqual(str(err), 'Error message')
Example #6
0
    def test_str(self):
        from ptah.form import Invalid, Field

        f = Field(name='test')
        f.request = self.request

        err = Invalid('${val} message', f, mapping={'val': 'Error'})
        self.assertEqual(str(err), 'Error message')
Example #7
0
    def test_ctor_default(self):
        from ptah.form import Invalid

        err = Invalid()
        self.assertEqual(err.msg, '')
        self.assertIsNone(err.field)
        self.assertIsNone(err.mapping)
        self.assertIsNone(err.name)
        self.assertEqual(err.errors, {})
Example #8
0
    def test_form_errors_str(self):
        from ptah.form import Invalid, TextField
        from ptah.form.form import form_error_message
        request = self.make_request()

        err1 = 'Error1'
        err2 = Invalid('Error2')
        err2.field = TextField('text')

        msg = [err1, err2]

        errs = form_error_message(msg, request)['errors']
        self.assertIn(err1, errs)
        self.assertNotIn(err2, errs)

        request.add_message(msg, 'form:error')
        res = request.render_messages()
        self.assertIn('Error1', res)
        self.assertIn('Please fix indicated errors.', res)
Example #9
0
    def test_form_errors_str(self):
        from ptah.form import Invalid, TextField
        from ptah.form.form import form_error_message
        request = self.make_request()

        err1 = 'Error1'
        err2 = Invalid('Error2')
        err2.field = TextField('text')

        msg = [err1, err2]

        errs = form_error_message(msg, request)['errors']
        self.assertIn(err1, errs)
        self.assertNotIn(err2, errs)

        request.add_message(msg, 'form:error')
        res = request.render_messages()
        self.assertIn('Error1', res)
        self.assertIn('Please fix indicated errors.', res)
Example #10
0
    def test_form_errors(self):
        import ptah
        from ptah.form import Invalid, TextField
        from ptah.form.form import formErrorMessage
        request = DummyRequest()

        err1 = Invalid(None, 'Error1')
        err2 = Invalid(None, 'Error2')
        err2.field = TextField('text')

        msg = ptah.view.Message([err1, err2], request)

        errs = formErrorMessage(msg, request)['errors']
        self.assertIn(err1, errs)
        self.assertNotIn(err2, errs)

        ptah.view.add_message(request, [err1, err2], 'form-error')

        res = ptah.view.render_messages(request)
        self.assertIn('Please fix indicated errors.', res)
Example #11
0
    def test_form_errors(self):
        import ptah
        from ptah.form import Invalid, TextField
        from ptah.form.form import formErrorMessage
        request = DummyRequest()

        err1 = Invalid(None, 'Error1')
        err2 = Invalid(None, 'Error2')
        err2.field = TextField('text')

        msg = ptah.view.Message([err1, err2], request)

        errs = formErrorMessage(msg, request)['errors']
        self.assertIn(err1, errs)
        self.assertNotIn(err2, errs)

        ptah.view.add_message(request, [err1, err2], 'form-error')

        res = ptah.view.render_messages(request)
        self.assertIn('Please fix indicated errors.', res)
Example #12
0
 def validate(self, data, errors):
     errors.append(Invalid('error1'))
Example #13
0
 def validate(self, data, errors):
     errors.extend((Invalid('error1'), 'error2'))
Example #14
0
    def test_str_no_request(self):
        from ptah.form import Invalid
        self.config.end()

        err = Invalid('${val} message', mapping={'val': 'Error'})
        self.assertEqual(str(err), '${val} message')
Example #15
0
    def test_str_no_field(self):
        from ptah.form import Invalid

        err = Invalid('${val} message', mapping={'val': 'Error'})
        self.assertEqual(str(err), 'Error message')
Example #16
0
 def validate(self, data, errors):
     raise Invalid('error1')
Example #17
0
 def __call__(self, field, value):
     from ptah.form import Invalid
     if self.msg:
         raise Invalid(self.msg, field)
Example #18
0
 def __call__(self, node, value):
     from ptah.form import Invalid
     if self.msg:
         raise Invalid(node, self.msg)