def test_none_of(self): self.assertEqual(NoneOf(['a', 'b', 'c'])(self.form, DummyField('d')), None) self.assertRaises(ValueError, NoneOf(['a', 'b', 'c']), self.form, DummyField('a'))
def test_equal_to(self): self.form['foo'] = DummyField('test') self.assertEqual(equal_to('foo')(self.form, self.form['foo']), None) self.assertRaises(ValidationError, equal_to('invalid_field_name'), self.form, DummyField('test')) self.assertRaises(ValidationError, equal_to('foo'), self.form, DummyField('different_value'))
def test_email(self): self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertRaises(ValidationError, email(), self.form, DummyField(None)) self.assertRaises(ValidationError, email(), self.form, DummyField('')) self.assertRaises(ValidationError, email(), self.form, DummyField(' ')) self.assertRaises(ValidationError, email(), self.form, DummyField('foo')) self.assertRaises(ValidationError, email(), self.form, DummyField('bar.dk')) self.assertRaises(ValidationError, email(), self.form, DummyField('foo@')) self.assertRaises(ValidationError, email(), self.form, DummyField('@bar.dk')) self.assertRaises(ValidationError, email(), self.form, DummyField('foo@bar')) self.assertRaises(ValidationError, email(), self.form, DummyField('[email protected]')) self.assertRaises(ValidationError, email(), self.form, DummyField('*****@*****.**')) self.assertRaises(ValidationError, email(), self.form, DummyField('*****@*****.**')) self.assertRaises(ValidationError, email(), self.form, DummyField('foo@[email protected]')) self.assertRaises(ValidationError, email(), self.form, DummyField('fo [email protected]')) # Test IDNA domains self.assertEqual(email()(self.form, DummyField(u'foo@bücher.中国')), None)
def test_url(self): self.assertEqual(url()(self.form, DummyField('http://foobar.dk')), None) self.assertEqual(url()(self.form, DummyField('http://foobar.dk/')), None) self.assertEqual(url()(self.form, DummyField('http://foobar.museum/foobar')), None) self.assertEqual(url()(self.form, DummyField('http://127.0.0.1/foobar')), None) self.assertEqual(url()(self.form, DummyField('http://127.0.0.1:9000/fake')), None) self.assertEqual(url(require_tld=False)(self.form, DummyField('http://localhost/foobar')), None) self.assertEqual(url(require_tld=False)(self.form, DummyField('http://foobar')), None) self.assertRaises(ValidationError, url(), self.form, DummyField('http://foobar')) self.assertRaises(ValidationError, url(), self.form, DummyField('foobar.dk')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://127.0.0/asdf')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://foobar.d')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://foobar.12')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://localhost:abc/a')) # Test IDNA IDNA_TESTS = ( u'http://\u0645\u062b\u0627\u0644.\u0625\u062e\u062a\u0628\u0627\u0631/foo.com', # Arabic test u'http://उदाहरण.परीक्षा/', # Hindi test u'http://실례.테스트', # Hangul test ) for s in IDNA_TESTS: self.assertEqual(url()(self.form, DummyField(s)), None)
def test_required(self): self.assertEqual(required()(self.form, DummyField('foobar')), None) self.assertRaises(StopValidation, required(), self.form, DummyField(''))
def test_email(self): self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertEqual(email()(self.form, DummyField('*****@*****.**')), None) self.assertRaises(ValidationError, email(), self.form, DummyField(None)) self.assertRaises(ValidationError, email(), self.form, DummyField('')) self.assertRaises(ValidationError, email(), self.form, DummyField(' ')) self.assertRaises(ValidationError, email(), self.form, DummyField('foo')) self.assertRaises(ValidationError, email(), self.form, DummyField('bar.dk')) self.assertRaises(ValidationError, email(), self.form, DummyField('foo@')) self.assertRaises(ValidationError, email(), self.form, DummyField('@bar.dk')) self.assertRaises(ValidationError, email(), self.form, DummyField('*****@*****.**')) self.assertRaises(ValidationError, email(), self.form, DummyField('foo@[email protected]')) # Test IDNA domains self.assertEqual(email()(self.form, DummyField(u'foo@bücher.中国')), None) # Test email address with invalid user part self.assertRaises(ValidationError, email(), self.form, DummyField('蛤@baz.com')) # Test too long domains self.assertRaises(ValidationError, email(), self.form, DummyField('foo@' + 'b.ar' * 64))
def test_url(self): self.assertEqual(url()(self.form, DummyField('http://foobar.dk')), None) self.assertEqual(url()(self.form, DummyField('http://foobar.dk/')), None) self.assertEqual(url()(self.form, DummyField('http://foobar.museum/foobar')), None) self.assertEqual(url()(self.form, DummyField('http://127.0.0.1/foobar')), None) self.assertEqual(url()(self.form, DummyField('http://127.0.0.1:9000/fake')), None) self.assertEqual(url(require_tld=False)(self.form, DummyField('http://localhost/foobar')), None) self.assertEqual(url(require_tld=False)(self.form, DummyField('http://foobar')), None) self.assertRaises(ValidationError, url(), self.form, DummyField('http://foobar')) self.assertRaises(ValidationError, url(), self.form, DummyField('foobar.dk')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://127.0.0/asdf')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://foobar.d')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://foobar.12')) self.assertRaises(ValidationError, url(), self.form, DummyField('http://localhost:abc/a'))