fixes issue #773
Removed redundant tests in test_validators.py since there's test_isurl.py Added allowed_tlds from http://data.iana.org/TLD/tlds-alpha-by-domain.txt Added script to easily update the official_top_level_domains for the future
This commit is contained in:
@@ -498,7 +498,7 @@ class TestIsHttpUrl(unittest.TestCase):
|
||||
'http://1234567890.com.',
|
||||
'http://1234567890.com./path',
|
||||
'http://google.com./path',
|
||||
'http://domain.xn--0zwm56d',
|
||||
'http://domain.xn--d1acj3b',
|
||||
'http://127.123.0.256',
|
||||
'http://127.123.0.256/document/drawer',
|
||||
'127.123.0.256/document/',
|
||||
@@ -669,5 +669,31 @@ class TestUnicode(unittest.TestCase):
|
||||
|
||||
# ##############################################################################
|
||||
|
||||
|
||||
class TestSimple(unittest.TestCase):
|
||||
|
||||
def test_IS_URL(self):
|
||||
rtn = IS_URL()('abc.com')
|
||||
self.assertEqual(rtn, ('http://abc.com', None))
|
||||
rtn = IS_URL(mode='generic')('abc.com')
|
||||
self.assertEqual(rtn, ('abc.com', None))
|
||||
rtn = IS_URL(allowed_schemes=['https'], prepend_scheme='https')('https://abc.com')
|
||||
self.assertEqual(rtn, ('https://abc.com', None))
|
||||
rtn = IS_URL(prepend_scheme='https')('abc.com')
|
||||
self.assertEqual(rtn, ('https://abc.com', None))
|
||||
rtn = IS_URL(mode='generic', allowed_schemes=['ftps', 'https'], prepend_scheme='https')('https://abc.com')
|
||||
self.assertEqual(rtn, ('https://abc.com', None))
|
||||
rtn = IS_URL(mode='generic', allowed_schemes=['ftps', 'https', None], prepend_scheme='https')('abc.com')
|
||||
self.assertEqual(rtn, ('abc.com', None))
|
||||
# regression test for issue 773
|
||||
rtn = IS_URL()('domain.ninja')
|
||||
self.assertEqual(rtn, ('http://domain.ninja', None))
|
||||
# addition of allowed_tlds
|
||||
rtn = IS_URL(allowed_tlds=['com', 'net', 'org'])('domain.ninja')
|
||||
self.assertEqual(rtn, ('domain.ninja', 'Enter a valid URL'))
|
||||
# mode = 'generic' doesn't consider allowed_tlds
|
||||
rtn = IS_URL(mode='generic', allowed_tlds=['com', 'net', 'org'])('domain.ninja')
|
||||
self.assertEqual(rtn, ('domain.ninja', None))
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
||||
@@ -583,8 +583,6 @@ class TestValidators(unittest.TestCase):
|
||||
rtn = IS_LENGTH(6)(a)
|
||||
self.assertEqual(rtn, (a, None))
|
||||
|
||||
|
||||
|
||||
def test_IS_LOWER(self):
|
||||
rtn = IS_LOWER()('ABC')
|
||||
self.assertEqual(rtn, ('abc', None))
|
||||
@@ -769,19 +767,6 @@ class TestValidators(unittest.TestCase):
|
||||
rtn = IS_UPPER()('ñ')
|
||||
self.assertEqual(rtn, ('\xc3\x91', None))
|
||||
|
||||
def test_IS_URL(self):
|
||||
rtn = IS_URL()('abc.com')
|
||||
self.assertEqual(rtn, ('http://abc.com', None))
|
||||
rtn = IS_URL(mode='generic')('abc.com')
|
||||
self.assertEqual(rtn, ('abc.com', None))
|
||||
rtn = IS_URL(allowed_schemes=['https'], prepend_scheme='https')('https://abc.com')
|
||||
self.assertEqual(rtn, ('https://abc.com', None))
|
||||
rtn = IS_URL(prepend_scheme='https')('abc.com')
|
||||
self.assertEqual(rtn, ('https://abc.com', None))
|
||||
rtn = IS_URL(mode='generic', allowed_schemes=['ftps', 'https'], prepend_scheme='https')('https://abc.com')
|
||||
self.assertEqual(rtn, ('https://abc.com', None))
|
||||
rtn = IS_URL(mode='generic', allowed_schemes=['ftps', 'https', None], prepend_scheme='https')('abc.com')
|
||||
self.assertEqual(rtn, ('abc.com', None))
|
||||
|
||||
def test_IS_JSON(self):
|
||||
rtn = IS_JSON()('{"a": 100}')
|
||||
|
||||
Reference in New Issue
Block a user