Files @ ee801aa6292c
Branch filter:

Location: kallithea/rhodecode/tests/functional/test_admin_settings.py - annotation

Marcin Kuzminski
changes transient to expunge on cached repo instances, due to odd very rare problems with previos approach.
1e757ac98988
1e757ac98988
1e757ac98988
7486da5f0628
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
7486da5f0628
7486da5f0628
7486da5f0628
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
7486da5f0628
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
7486da5f0628
1e757ac98988
1e757ac98988
7486da5f0628
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
7486da5f0628
1e757ac98988
1e757ac98988
7486da5f0628
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
7486da5f0628
18a3ca35d501
7486da5f0628
7486da5f0628
1e757ac98988
1e757ac98988
7486da5f0628
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
1e757ac98988
from rhodecode.tests import *
from rhodecode.model.db import User

class TestAdminSettingsController(TestController):

    def test_index(self):
        response = self.app.get(url('admin_settings'))
        # Test response...

    def test_index_as_xml(self):
        response = self.app.get(url('formatted_admin_settings', format='xml'))

    def test_create(self):
        response = self.app.post(url('admin_settings'))

    def test_new(self):
        response = self.app.get(url('admin_new_setting'))

    def test_new_as_xml(self):
        response = self.app.get(url('formatted_admin_new_setting', format='xml'))

    def test_update(self):
        response = self.app.put(url('admin_setting', setting_id=1))

    def test_update_browser_fakeout(self):
        response = self.app.post(url('admin_setting', setting_id=1), params=dict(_method='put'))

    def test_delete(self):
        response = self.app.delete(url('admin_setting', setting_id=1))

    def test_delete_browser_fakeout(self):
        response = self.app.post(url('admin_setting', setting_id=1), params=dict(_method='delete'))

    def test_show(self):
        response = self.app.get(url('admin_setting', setting_id=1))

    def test_show_as_xml(self):
        response = self.app.get(url('formatted_admin_setting', setting_id=1, format='xml'))

    def test_edit(self):
        response = self.app.get(url('admin_edit_setting', setting_id=1))

    def test_edit_as_xml(self):
        response = self.app.get(url('formatted_admin_edit_setting', setting_id=1, format='xml'))

    def test_my_account(self):
        self.log_user()
        response = self.app.get(url('admin_settings_my_account'))
        print response
        assert 'value="test_admin' in response.body



    def test_my_account_update(self):
        self.log_user()
        new_email = 'new@mail.pl'
        response = self.app.post(url('admin_settings_my_account_update'), params=dict(
                                                            _method='put',
                                                            username='test_admin',
                                                            new_password='test12',
                                                            password='',
                                                            name='NewName',
                                                            lastname='NewLastname',
                                                            email=new_email,))
        response.follow()
        print response

        print 'x' * 100
        print response.session
        assert 'Your account was updated succesfully' in response.session['flash'][0][1], 'no flash message about success of change'
        user = self.sa.query(User).filter(User.username == 'test_admin').one()
        assert user.email == new_email , 'incorrect user email after update got %s vs %s' % (user.email, new_email)

    def test_my_account_update_own_email_ok(self):
        self.log_user()

        new_email = 'new@mail.pl'
        response = self.app.post(url('admin_settings_my_account_update'), params=dict(
                                                            _method='put',
                                                            username='test_admin',
                                                            new_password='test12',
                                                            name='NewName',
                                                            lastname='NewLastname',
                                                            email=new_email,))
        print response

    def test_my_account_update_err_email_exists(self):
        self.log_user()

        new_email = 'test_regular@mail.com'#already exisitn email
        response = self.app.post(url('admin_settings_my_account_update'), params=dict(
                                                            _method='put',
                                                            username='test_admin',
                                                            new_password='test12',
                                                            name='NewName',
                                                            lastname='NewLastname',
                                                            email=new_email,))
        print response

        assert 'This e-mail address is already taken' in response.body, 'Missing error message about existing email'


    def test_my_account_update_err(self):
        self.log_user('test_regular2', 'test12')

        new_email = 'newmail.pl'
        response = self.app.post(url('admin_settings_my_account_update'), params=dict(
                                                            _method='put',
                                                            username='test_admin',
                                                            new_password='test12',
                                                            name='NewName',
                                                            lastname='NewLastname',
                                                            email=new_email,))
        print response
        assert 'An email address must contain a single @' in response.body, 'Missing error message about wrong email'
        assert 'This username already exists' in response.body, 'Missing error message about existing user'