# -*- coding: utf-8 -*- from rhodecode.lib.auth import get_crypt_password, check_password from rhodecode.model.db import User, RhodeCodeSetting from rhodecode.tests import * from rhodecode.lib import helpers as h from rhodecode.model.user import UserModel 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_ga_code_active(self): self.log_user() old_title = 'RhodeCode' old_realm = 'RhodeCode authentication' new_ga_code = 'ga-test-123456789' response = self.app.post(url('admin_setting', setting_id='global'), params=dict( _method='put', rhodecode_title=old_title, rhodecode_realm=old_realm, rhodecode_ga_code=new_ga_code )) self.checkSessionFlash(response, 'Updated application settings') self.assertEqual(RhodeCodeSetting .get_app_settings()['rhodecode_ga_code'], new_ga_code) response = response.follow() response.mustcontain("""_gaq.push(['_setAccount', '%s']);""" % new_ga_code) def test_ga_code_inactive(self): self.log_user() old_title = 'RhodeCode' old_realm = 'RhodeCode authentication' new_ga_code = '' response = self.app.post(url('admin_setting', setting_id='global'), params=dict( _method='put', rhodecode_title=old_title, rhodecode_realm=old_realm, rhodecode_ga_code=new_ga_code )) self.assertTrue('Updated application settings' in response.session['flash'][0][1]) self.assertEqual(RhodeCodeSetting .get_app_settings()['rhodecode_ga_code'], new_ga_code) response = response.follow() self.assertFalse("""_gaq.push(['_setAccount', '%s']);""" % new_ga_code in response.body) def test_title_change(self): self.log_user() old_title = 'RhodeCode' new_title = old_title + '_changed' old_realm = 'RhodeCode authentication' for new_title in ['Changed', 'Żółwik', old_title]: response = self.app.post(url('admin_setting', setting_id='global'), params=dict( _method='put', rhodecode_title=new_title, rhodecode_realm=old_realm, rhodecode_ga_code='' )) self.checkSessionFlash(response, 'Updated application settings') self.assertEqual(RhodeCodeSetting .get_app_settings()['rhodecode_title'], new_title.decode('utf-8')) response = response.follow() response.mustcontain("""