__init__.py
60 lines
| 2.0 KiB
| text/x-python
|
PythonLexer
r547 | """Pylons application test package | |||
This package assumes the Pylons environment is already loaded, such as | ||||
when this script is imported from the `nosetests --with-pylons=test.ini` | ||||
command. | ||||
This module initializes the application via ``websetup`` (`paster | ||||
setup-app`) and provides the base testing objects. | ||||
""" | ||||
from unittest import TestCase | ||||
from paste.deploy import loadapp | ||||
from paste.script.appinstall import SetupCommand | ||||
from pylons import config, url | ||||
from routes.util import URLGenerator | ||||
from webtest import TestApp | ||||
import os | ||||
from rhodecode.model import meta | ||||
import logging | ||||
r639 | log = logging.getLogger(__name__) | |||
r547 | ||||
import pylons.test | ||||
__all__ = ['environ', 'url', 'TestController'] | ||||
# Invoke websetup with the current config file | ||||
#SetupCommand('setup-app').run([config_file]) | ||||
##RUNNING DESIRED TESTS | ||||
#nosetests rhodecode.tests.functional.test_admin_settings:TestSettingsController.test_my_account | ||||
environ = {} | ||||
r639 | TEST_DIR = '/tmp' | |||
REPO_PATH = os.path.join(TEST_DIR, 'vcs_test') | ||||
NEW_REPO_PATH = os.path.join(TEST_DIR, 'vcs_test_new') | ||||
r547 | ||||
class TestController(TestCase): | ||||
def __init__(self, *args, **kwargs): | ||||
wsgiapp = pylons.test.pylonsapp | ||||
config = wsgiapp.config | ||||
self.app = TestApp(wsgiapp) | ||||
url._push_object(URLGenerator(config['routes.map'], environ)) | ||||
self.sa = meta.Session | ||||
TestCase.__init__(self, *args, **kwargs) | ||||
r639 | ||||
r547 | def log_user(self, username='test_admin', password='test12'): | |||
response = self.app.post(url(controller='login', action='index'), | ||||
{'username':username, | ||||
'password':password}) | ||||
print response | ||||
r639 | ||||
r547 | if 'invalid user name' in response.body: | |||
assert False, 'could not login using %s %s' % (username, password) | ||||
r639 | ||||
r547 | assert response.status == '302 Found', 'Wrong response code from login got %s' % response.status | |||
r548 | assert response.session['rhodecode_user'].username == username, 'wrong logged in user got %s expected %s' % (response.session['rhodecode_user'].username, username) | |||
r547 | return response.follow() | |||