annotate pylons_app/tests/__init__.py @ 0:564e40829f80

initial commit.
author Marcin Kuzminski
date Thu, 18 Feb 2010 13:01:57 +0100
parents
children 7c978511c951
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
1 """Pylons application test package
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
2
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
3 This package assumes the Pylons environment is already loaded, such as
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
4 when this script is imported from the `nosetests --with-pylons=test.ini`
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
5 command.
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
6
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
7 This module initializes the application via ``websetup`` (`paster
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
8 setup-app`) and provides the base testing objects.
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
9 """
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
10 from unittest import TestCase
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
11
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
12 from paste.deploy import loadapp
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
13 from paste.script.appinstall import SetupCommand
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
14 from pylons import config, url
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
15 from routes.util import URLGenerator
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
16 from webtest import TestApp
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
17
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
18 import pylons.test
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
19
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
20 __all__ = ['environ', 'url', 'TestController']
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
21
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
22 # Invoke websetup with the current config file
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
23 SetupCommand('setup-app').run([config['__file__']])
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
24
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
25 environ = {}
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
26
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
27 class TestController(TestCase):
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
28
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
29 def __init__(self, *args, **kwargs):
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
30 if pylons.test.pylonsapp:
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
31 wsgiapp = pylons.test.pylonsapp
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
32 else:
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
33 wsgiapp = loadapp('config:%s' % config['__file__'])
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
34 self.app = TestApp(wsgiapp)
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
35 url._push_object(URLGenerator(config['routes.map'], environ))
564e40829f80 initial commit.
Marcin Kuzminski
parents:
diff changeset
36 TestCase.__init__(self, *args, **kwargs)