blob: 36c2b89d7862504dc77df16479c5df0c2bb675ee [file] [log] [blame]
Christian Heimes7131fd92008-02-19 14:21:46 +00001"""
2These tests only check url parsing for now.
3We don't want to require the 'network' resource.
4"""
5
6import os, unittest
Georg Brandl24420152008-05-26 16:32:26 +00007from http.server import SimpleHTTPRequestHandler
Benjamin Petersonee8712c2008-05-20 21:35:26 +00008from test import support
Christian Heimes7131fd92008-02-19 14:21:46 +00009
10
Georg Brandl24420152008-05-26 16:32:26 +000011class SocketlessRequestHandler(SimpleHTTPRequestHandler):
Christian Heimes7131fd92008-02-19 14:21:46 +000012 def __init__(self):
13 pass
14
15class SimpleHTTPRequestHandlerTestCase(unittest.TestCase):
16 """ Test url parsing """
17 def setUp (self):
18 self.translated = os.getcwd()
19 self.translated = os.path.join(self.translated, 'filename')
20 self.handler = SocketlessRequestHandler ()
21
22 def test_queryArguments (self):
23 path = self.handler.translate_path ('/filename')
24 self.assertEquals (path, self.translated)
25 path = self.handler.translate_path ('/filename?foo=bar')
26 self.assertEquals (path, self.translated)
27 path = self.handler.translate_path ('/filename?a=b&spam=eggs#zot')
28 self.assertEquals (path, self.translated)
29
30 def test_startWithDoubleSlash (self):
31 path = self.handler.translate_path ('//filename')
32 self.assertEquals (path, self.translated)
33 path = self.handler.translate_path ('//filename?foo=bar')
34 self.assertEquals (path, self.translated)
35
36
37def test_main():
Benjamin Petersonee8712c2008-05-20 21:35:26 +000038 support.run_unittest(SimpleHTTPRequestHandlerTestCase)
Christian Heimes7131fd92008-02-19 14:21:46 +000039
40if __name__ == "__main__":
41 test_main()