mirror of
https://github.com/Hopiu/linkchecker.git
synced 2026-04-10 01:21:00 +00:00
git-svn-id: https://linkchecker.svn.sourceforge.net/svnroot/linkchecker/trunk/linkchecker@1393 e7d03fd6-7b0d-0410-9947-9c21f3af8025
60 lines
2.5 KiB
Python
60 lines
2.5 KiB
Python
# -*- coding: iso-8859-1 -*-
|
|
import unittest
|
|
import bk.url
|
|
|
|
|
|
class TestUrl (unittest.TestCase):
|
|
|
|
def test_pathattack (self):
|
|
url = "http://server/..%5c..%5c..%5c..%5c..%5c..%5..%5c..%5ccskin.zip"
|
|
nurl = "http://server/cskin.zip"
|
|
self.assertEquals(bk.url.url_quote(bk.url.url_norm(url)), nurl)
|
|
|
|
def test_norm (self):
|
|
url = "http://groups.google.com/groups?hl=en&lr&ie=UTF-8&threadm=3845B54D.E546F9BD%40monmouth.com&rnum=2&prev=/groups%3Fq%3Dlogitech%2Bwingman%2Bextreme%2Bdigital%2B3d%26hl%3Den%26lr%3D%26ie%3DUTF-8%26selm%3D3845B54D.E546F9BD%2540monmouth.com%26rnum%3D2"
|
|
nurl = url
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
url = "http://redirect.alexa.com/redirect?http://www.offeroptimizer.com"
|
|
nurl = url
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
url = "http://www.lesgensducinema.com/photo/Philippe%20Nahon.jpg"
|
|
nurl = url
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
|
|
def test_fixing (self):
|
|
url = r"http://groups.google.com\test.html"
|
|
nurl = "http://groups.google.com/test.html"
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
url = r"http://groups.google.com/a\test.html"
|
|
nurl = "http://groups.google.com/a/test.html"
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
url = r"http://groups.google.com\a\test.html"
|
|
nurl = "http://groups.google.com/a/test.html"
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
url = r"http://groups.google.com\a/test.html"
|
|
nurl = "http://groups.google.com/a/test.html"
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
url = "http://groups.google.com//a/test.html"
|
|
nurl = "http://groups.google.com/a/test.html"
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
url = "http://groups.google.com//a/b/"
|
|
nurl = "http://groups.google.com/a/b/"
|
|
self.assertEqual(bk.url.url_norm(url), nurl)
|
|
|
|
def test_valid (self):
|
|
self.assert_(bk.url.is_valid_url("http://www.imadoofus.com"))
|
|
self.assert_(bk.url.is_valid_url("http://www.imadoofus.com/"))
|
|
self.assert_(bk.url.is_valid_url("http://www.imadoofus.com/~calvin"))
|
|
self.assert_(bk.url.is_valid_url("http://www.imadoofus.com/a,b"))
|
|
self.assert_(bk.url.is_valid_url("http://www.imadoofus.com#anchor55"))
|
|
self.assert_(bk.url.is_valid_js_url("http://www.imadoofus.com/?hulla=do"))
|
|
|
|
|
|
def test_suite ():
|
|
suite = unittest.TestSuite()
|
|
suite.addTest(unittest.makeSuite(TestUrl))
|
|
return suite
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|
|
|