]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.enterprise/ext/test/org/argeo/osgi/useradmin/UserAdminConfTest.java
[maven-release-plugin] prepare release argeo-commons-2.1.82
[lgpl/argeo-commons.git] / org.argeo.enterprise / ext / test / org / argeo / osgi / useradmin / UserAdminConfTest.java
1 package org.argeo.osgi.useradmin;
2
3 import static org.argeo.osgi.useradmin.UserAdminConf.propertiesAsUri;
4 import static org.argeo.osgi.useradmin.UserAdminConf.uriAsProperties;
5
6 import java.net.URI;
7 import java.util.Dictionary;
8
9 /** {@link UserAdminConf} tests. */
10 public class UserAdminConfTest {
11 public void testUriFormat() throws Exception {
12 // LDAP
13 URI uriIn = new URI("ldap://" + "uid=admin,ou=system:secret@localhost:10389" + "/dc=example,dc=com"
14 + "?readOnly=false&userObjectClass=person");
15 Dictionary<String, ?> props = uriAsProperties(uriIn.toString());
16 System.out.println(props);
17 assert "dc=example,dc=com".equals(props.get(UserAdminConf.baseDn.name()));
18 assert "false".equals(props.get(UserAdminConf.readOnly.name()));
19 assert "person".equals(props.get(UserAdminConf.userObjectClass.name()));
20 URI uriOut = propertiesAsUri(props);
21 System.out.println(uriOut);
22 assert "/dc=example,dc=com?userObjectClass=person&readOnly=false".equals(uriOut.toString());
23
24 // File
25 uriIn = new URI("file://some/dir/dc=example,dc=com.ldif");
26 props = uriAsProperties(uriIn.toString());
27 System.out.println(props);
28 assert "dc=example,dc=com".equals(props.get(UserAdminConf.baseDn.name()));
29
30 // Base configuration
31 uriIn = new URI("/dc=example,dc=com.ldif?readOnly=true&userBase=ou=CoWorkers,ou=People&groupBase=ou=Roles");
32 props = uriAsProperties(uriIn.toString());
33 System.out.println(props);
34 assert "dc=example,dc=com".equals(props.get(UserAdminConf.baseDn.name()));
35 assert "true".equals(props.get(UserAdminConf.readOnly.name()));
36 assert "ou=CoWorkers,ou=People".equals(props.get(UserAdminConf.userBase.name()));
37 assert "ou=Roles".equals(props.get(UserAdminConf.groupBase.name()));
38 uriOut = propertiesAsUri(props);
39 System.out.println(uriOut);
40 assert "/dc=example,dc=com?userBase=ou=CoWorkers,ou=People&groupBase=ou=Roles&readOnly=true"
41 .equals(uriOut.toString());
42
43 // OS
44 uriIn = new URI("os:///dc=example,dc=com");
45 props = uriAsProperties(uriIn.toString());
46 System.out.println(props);
47 assert "dc=example,dc=com".equals(props.get(UserAdminConf.baseDn.name()));
48 assert "true".equals(props.get(UserAdminConf.readOnly.name()));
49 uriOut = propertiesAsUri(props);
50 System.out.println(uriOut);
51 assert "/dc=example,dc=com?readOnly=true".equals(uriOut.toString());
52 }
53 }