def test_message_too_short(self): form = ContactForm({'name': 'John Doe', 'email': '*****@*****.**', 'message': 'Too short', 'subject': 'Error test', 'author': ''}) self.assertFalse(form.is_valid()) message = form.errors.get('message', None) self.assertEqual(len(message), 1) self.assertIn('Please enter a longer message.', message)
def test_invalid_name(self): form = ContactForm({'name': u'\u201CJohn,\u201D @"<.Doe>"', 'email': '*****@*****.**', 'message': 'Long enough' * 10, 'subject': 'Error test', 'author': ''}) self.assertFalse(form.is_valid()) name = form.errors.get('name', None) self.assertIn( 'Your name can\'t contain the characters <, >, @, comma, ., or ".', name)
def test_custom_error_messages(self): form = ContactForm({'name': '', 'email': '', 'message': '', 'subject': '', 'author': ''}) self.assertFalse(form.is_valid()) name = form.errors.get('name', None) email = form.errors.get('email', None) message = form.errors.get('message', None) subject = form.errors.get('subject', None) author = form.errors.get('author', 'no error') self.assertEqual(len(name), 1) self.assertEqual(len(email), 1) self.assertEqual(len(message), 1) self.assertEqual(len(subject), 1) self.assertIn('Please provide your name.', name) self.assertIn('Please provide your email address.', email) self.assertIn('Please provide a message.', message) self.assertIn('Please provide a subject.', subject) self.assertEqual(author, 'no error')
def setUp(self): self.form = ContactForm({'name': 'John Doe', 'email': '*****@*****.**', 'message': 'Long enough' * 10, 'subject': 'Error test', 'author': ''})