summaryrefslogtreecommitdiff
path: root/Lib/test/test_SimpleHTTPServer.py
blob: d285f274f1d72c8b34aac6f782dfcbacd44702f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
"""
These tests only check url parsing for now.
We don't want to require the 'network' resource.
"""

import os, unittest
from SimpleHTTPServer import SimpleHTTPRequestHandler
from test import support


class SocketlessRequestHandler (SimpleHTTPRequestHandler):
    def __init__(self):
        pass

class SimpleHTTPRequestHandlerTestCase(unittest.TestCase):
    """ Test url parsing """
    def setUp (self):
        self.translated = os.getcwd()
        self.translated = os.path.join(self.translated, 'filename')
        self.handler = SocketlessRequestHandler ()

    def test_queryArguments (self):
        path = self.handler.translate_path ('/filename')
        self.assertEquals (path, self.translated)
        path = self.handler.translate_path ('/filename?foo=bar')
        self.assertEquals (path, self.translated)
        path = self.handler.translate_path ('/filename?a=b&spam=eggs#zot')
        self.assertEquals (path, self.translated)

    def test_startWithDoubleSlash (self):
        path = self.handler.translate_path ('//filename')
        self.assertEquals (path, self.translated)
        path = self.handler.translate_path ('//filename?foo=bar')
        self.assertEquals (path, self.translated)


def test_main():
    support.run_unittest(SimpleHTTPRequestHandlerTestCase)

if __name__ == "__main__":
    test_main()