|
@@ -1,6 +1,7 @@
|
|
|
# -*- coding: utf-8 -*-
|
|
|
import os
|
|
|
from django.test import TestCase, Client
|
|
|
+from django.contrib.auth.models import User
|
|
|
from coin.members.models import Member, LdapUser, LdapGroup
|
|
|
import logging
|
|
|
|
|
@@ -19,7 +20,7 @@ class MemberTests(TestCase):
|
|
|
|
|
|
first_name = u'Gérard';
|
|
|
last_name = u'Majax';
|
|
|
- ldap_cn = self.get_random_ldap_cn()
|
|
|
+ ldap_cn = MemberTestsUtils.get_random_ldap_cn()
|
|
|
member = Member(first_name = first_name,
|
|
|
last_name = last_name,
|
|
|
ldap_cn = ldap_cn)
|
|
@@ -44,7 +45,7 @@ class MemberTests(TestCase):
|
|
|
#~ Créé un membre
|
|
|
first_name = u'Ronald';
|
|
|
last_name = u'Mac Donald';
|
|
|
- ldap_cn = self.get_random_ldap_cn()
|
|
|
+ ldap_cn = MemberTestsUtils.get_random_ldap_cn()
|
|
|
member = Member(first_name = first_name, last_name = last_name, ldap_cn = ldap_cn)
|
|
|
member.save()
|
|
|
|
|
@@ -71,7 +72,7 @@ class MemberTests(TestCase):
|
|
|
est bien retiré du groupe.
|
|
|
"""
|
|
|
#~ Créé un membre
|
|
|
- ldap_cn = self.get_random_ldap_cn()
|
|
|
+ ldap_cn = MemberTestsUtils.get_random_ldap_cn()
|
|
|
member = Member(first_name = 'Canard', last_name = 'WC', ldap_cn = ldap_cn)
|
|
|
member.save()
|
|
|
|
|
@@ -94,7 +95,7 @@ class MemberTests(TestCase):
|
|
|
Test que la fonction change_password de member fonctionne et permet
|
|
|
l'authentification avec le nouveau mot de passe
|
|
|
"""
|
|
|
- ldap_cn = self.get_random_ldap_cn()
|
|
|
+ ldap_cn = MemberTestsUtils.get_random_ldap_cn()
|
|
|
password = "1234"
|
|
|
|
|
|
#~ Créé un nouveau membre
|
|
@@ -122,7 +123,7 @@ class MemberTests(TestCase):
|
|
|
"""
|
|
|
first_name = u'Gérard'
|
|
|
last_name = u'Majax'
|
|
|
- ldap_cn = self.get_random_ldap_cn()
|
|
|
+ ldap_cn = MemberTestsUtils.get_random_ldap_cn()
|
|
|
member = Member(first_name = first_name, last_name = last_name, ldap_cn = ldap_cn)
|
|
|
member.save()
|
|
|
|
|
@@ -156,7 +157,35 @@ class MemberTests(TestCase):
|
|
|
member.delete();
|
|
|
LdapUser.objects.get(pk=member.ldap_cn).delete();
|
|
|
|
|
|
- def get_random_ldap_cn(self):
|
|
|
+
|
|
|
+class MemberAdminTests(TestCase):
|
|
|
+ def setUp(self):
|
|
|
+ #~ Client web
|
|
|
+ self.client = Client()
|
|
|
+ #~ Créé un superuser
|
|
|
+ self.admin_user_password = '1234'
|
|
|
+ self.admin_user = User.objects.create_superuser('test_admin_user', 'i@mail.com', self.admin_user_password)
|
|
|
+ #~ Connection
|
|
|
+ self.assertEqual(self.client.login(username = self.admin_user.username, password = self.admin_user_password),True)
|
|
|
+
|
|
|
+ def test_cant_change_ldap_cn_when_editing(self):
|
|
|
+ #~ Créé un membre
|
|
|
+ first_name = u'Gérard'
|
|
|
+ last_name = u'Majax'
|
|
|
+ ldap_cn = MemberTestsUtils.get_random_ldap_cn()
|
|
|
+ member = Member(first_name = first_name, last_name = last_name, ldap_cn = ldap_cn)
|
|
|
+ member.save()
|
|
|
+
|
|
|
+ edit_page = self.client.get('/admin/members/member/%i/' % member.id)
|
|
|
+ self.assertNotContains(edit_page,
|
|
|
+ '''<input id="id_ldap_cn" />''',
|
|
|
+ html=True)
|
|
|
+
|
|
|
+ logger.debug(edit_page)
|
|
|
+
|
|
|
+class MemberTestsUtils(object):
|
|
|
+ @staticmethod
|
|
|
+ def get_random_ldap_cn():
|
|
|
"""
|
|
|
Renvoi une clé aléatoire pour un utilisateur LDAP
|
|
|
"""
|