1 from cherrypy.test import test
2 test.prefer_parent_path()
3
4 import cherrypy
5
6
8
9 class ClassOfRoot(object):
10
11 def __init__(self, name):
12 self.name = name
13
14 def index(self):
15 return "Welcome to the %s website!" % self.name
16 index.exposed = True
17
18
19 cherrypy.config.update({'environment': 'test_suite'})
20
21 default = cherrypy.Application(None)
22
23 domains = {}
24 for year in xrange(1997, 2008):
25 app = cherrypy.Application(ClassOfRoot('Class of %s' % year))
26 domains['www.classof%s.example' % year] = app
27
28 cherrypy.tree.graft(cherrypy._cpwsgi.VirtualHost(default, domains))
29
30
31 from cherrypy.test import helper
32
33
35
37 if not cherrypy.server.using_wsgi:
38 print "skipped (not using WSGI)...",
39 return
40
41 for year in xrange(1997, 2008):
42 self.getPage("/", headers=[('Host', 'www.classof%s.example' % year)])
43 self.assertBody("Welcome to the Class of %s website!" % year)
44
45
46 if __name__ == '__main__':
47 setup_server()
48 helper.testmain()
49