Mercurial > kallithea
view rhodecode/tests/functional/test_admin_ldap_settings.py @ 3651:659bd922520e beta
config: rename options to show_revision_number and show_sha_length
'sha_show_numeric_rev' had nothing to do with the sha value.
The revision numbers are kind of native to Mercurial and there they are known
as 'revision numbers'.
'sha_len' was very short and didn't clarify that it only controlled what was shown.
These settings are currently only used in the changelog, but they should be used everywhere.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 03 Apr 2013 15:56:12 +0200 |
parents | 63e49418a4cc |
children | ff2ea58debb5 |
line wrap: on
line source
from rhodecode.tests import * from rhodecode.model.db import RhodeCodeSetting skip_ldap_test = False try: import ldap except ImportError: # means that python-ldap is not installed skip_ldap_test = True pass class TestLdapSettingsController(TestController): def test_index(self): self.log_user() response = self.app.get(url(controller='admin/ldap_settings', action='index')) response.mustcontain('LDAP administration') def test_ldap_save_settings(self): self.log_user() if skip_ldap_test: raise SkipTest('skipping due to missing ldap lib') test_url = url(controller='admin/ldap_settings', action='ldap_settings') response = self.app.post(url=test_url, params={'ldap_host' : u'dc.example.com', 'ldap_port' : '999', 'ldap_tls_kind' : 'PLAIN', 'ldap_tls_reqcert' : 'NEVER', 'ldap_dn_user':'test_user', 'ldap_dn_pass':'test_pass', 'ldap_base_dn':'test_base_dn', 'ldap_filter':'test_filter', 'ldap_search_scope':'BASE', 'ldap_attr_login':'test_attr_login', 'ldap_attr_firstname':'ima', 'ldap_attr_lastname':'tester', 'ldap_attr_email':'test@example.com' }) new_settings = RhodeCodeSetting.get_ldap_settings() self.assertEqual(new_settings['ldap_host'], u'dc.example.com', 'fail db write compare') self.checkSessionFlash(response, 'LDAP settings updated successfully') def test_ldap_error_form(self): self.log_user() if skip_ldap_test: raise SkipTest('skipping due to missing ldap lib') test_url = url(controller='admin/ldap_settings', action='ldap_settings') response = self.app.post(url=test_url, params={'ldap_host' : '', 'ldap_port' : 'i-should-be-number', 'ldap_tls_kind' : 'PLAIN', 'ldap_tls_reqcert' : 'NEVER', 'ldap_dn_user':'', 'ldap_dn_pass':'', 'ldap_base_dn':'', 'ldap_filter':'', 'ldap_search_scope':'BASE', 'ldap_attr_login':'', # <----- missing required input 'ldap_attr_firstname':'', 'ldap_attr_lastname':'', 'ldap_attr_email':'' }) response.mustcontain("""<span class="error-message">The LDAP Login""" """ attribute of the CN must be specified""") response.mustcontain("""<span class="error-message">Please """ """enter a number</span>""") def test_ldap_login(self): pass def test_ldap_login_incorrect(self): pass