1
0
Fork 0
mirror of https://github.com/kakwa/ldapcherry synced 2025-07-04 04:17:43 +02:00

implementing weight and normalizing each kind of attributes

This commit is contained in:
kakwa 2015-05-31 23:27:04 +02:00
parent af3326db07
commit f8b3df8b58
8 changed files with 28 additions and 14 deletions

View file

@ -3,6 +3,7 @@ cn:
display_name: "Display Name"
type: string
search_displayed: True
weight: 30
autofill:
function: cn
args:
@ -11,11 +12,13 @@ cn:
backends:
ldap: cn
ad: CN
first-name:
description: "First name of the user"
display_name: "First Name"
search_displayed: True
type: string
weight: 20
backends:
ldap: givenName
ad: givenName
@ -23,6 +26,7 @@ name:
description: "Family name of the user"
display_name: "Name"
search_displayed: True
weight: 10
type: string
backends:
ldap: sn
@ -30,8 +34,8 @@ name:
email:
description: "Email of the user"
display_name: "Name"
search_displayed: True
type: email
weight: 40
autofill:
function: email
args:
@ -47,6 +51,7 @@ uid:
search_displayed: True
key: True
type: string
weight: 50
autofill:
function: uid
args:
@ -58,6 +63,7 @@ uid:
uidNumber:
description: "User ID Number of the user"
display_name: "UID Number"
weight: 60
type: int
autofill:
function: uidNumber
@ -70,6 +76,7 @@ uidNumber:
gidNumber:
description: "Group ID Number of the user"
display_name: "GID Number"
weight: 70
type: int
default: 10000
backends:
@ -78,6 +85,7 @@ gidNumber:
shell:
description: "Shell of the user"
display_name: "Shell"
weight: 80
self: True
type: stringlist
values:
@ -90,6 +98,7 @@ shell:
home:
description: "Home user path"
display_name: "Home"
weight: 90
type: string
autofill:
function: home
@ -104,6 +113,7 @@ home:
password:
description: "Password of the user"
display_name: "Password"
weight: 31
self: True
type: password
backends:
@ -112,6 +122,7 @@ password:
logscript:
description: "Windows login script"
display_name: "Login script"
weight: 100
type: fix
value: login1.bat
backends:

View file

@ -3,6 +3,7 @@ cn:
display_name: "Display Name"
type: notatype
key: True
weight: 10
autofill:
function: cn
args:
@ -16,6 +17,7 @@ first-name:
description: "First name of the user"
display_name: "First Name"
type: string
weight: 10
backends:
ldap: givenName
ad: givenName

View file

@ -21,7 +21,7 @@ class TestError(object):
def testGetSelfAttributes(self):
inv = Attributes('./tests/cfg/attributes.yml')
ret = inv.get_selfattributes()
expected = Set(['password', 'shell'])
expected = {'password': {'backends': {'ad': 'userPassword', 'ldap': 'userPassword'}, 'display_name': 'Password', 'description': 'Password of the user', 'weight': 31, 'self': True, 'type': 'password'}, 'shell': {'backends': {'ad': 'SHELL', 'ldap': 'shell'}, 'display_name': 'Shell', 'description': 'Shell of the user', 'weight': 80, 'values': ['/bin/bash', '/bin/zsh', '/bin/sh'], 'self': True, 'type': 'stringlist'}}
assert ret == expected
def testGetSelfAttributes(self):
@ -33,7 +33,7 @@ class TestError(object):
def testGetSearchAttributes(self):
inv = Attributes('./tests/cfg/attributes.yml')
ret = inv.get_search_attributes()
expected = {'first-name': 'First Name', 'cn': 'Display Name', 'name': 'Name', 'uid': 'UID', 'email': 'Name'}
expected = {'first-name': {'backends': {'ad': 'givenName', 'ldap': 'givenName'}, 'display_name': 'First Name', 'description': 'First name of the user', 'weight': 20, 'search_displayed': True, 'type': 'string'}, 'cn': {'autofill': {'function': 'cn', 'args': ['$first-name', '$name']}, 'backends': {'ad': 'CN', 'ldap': 'cn'}, 'display_name': 'Display Name', 'description': 'Firt Name and Display Name', 'weight': 30, 'search_displayed': True, 'type': 'string'}, 'name': {'backends': {'ad': 'sn', 'ldap': 'sn'}, 'display_name': 'Name', 'description': 'Family name of the user', 'weight': 10, 'search_displayed': True, 'type': 'string'}, 'uid': {'display_name': 'UID', 'description': 'UID of the user', 'weight': 50, 'autofill': {'function': 'uid', 'args': ['$first-name', '$last-name']}, 'backends': {'ad': 'UID', 'ldap': 'uid'}, 'key': True, 'search_displayed': True, 'type': 'string'}}
assert ret == expected
def testGetBackendAttributes(self):