New domain options and properties for Debian Bookworm #1
@ -19,7 +19,7 @@ import org.junit.Test;
|
||||
public class DomainTest {
|
||||
|
||||
private static final String MODULE = "domain";
|
||||
|
||||
|
||||
private XmlRpcClient client;
|
||||
private RemoteCASHelper cas;
|
||||
|
||||
@ -40,8 +40,8 @@ public class DomainTest {
|
||||
String user = "aaa00";
|
||||
String grantingTicketURL = cas.getGrantingTicketURL(user);
|
||||
Map<String, String> whereParams = new HashMap<String, String>();
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
whereParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".search", params);
|
||||
@ -61,15 +61,15 @@ public class DomainTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdate() {
|
||||
public void testUpdateWithoutPermissionFail() {
|
||||
String user = "aaa00";
|
||||
String grantingTicketURL = cas.getGrantingTicketURL(user);
|
||||
Map<String, String> setParams = new HashMap<String, String>();
|
||||
Map<String, String> whereParams = new HashMap<String, String>();
|
||||
setParams.put("user", "aaa00");
|
||||
whereParams.put("name", "example01.org");
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
setParams, whereParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".update", params);
|
||||
@ -87,8 +87,8 @@ public class DomainTest {
|
||||
Map<String, String> setParams = new HashMap<String, String>();
|
||||
setParams.put("name", "f8n.de");
|
||||
setParams.put("user", "aaa00-admin");
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
setParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".add", params);
|
||||
@ -99,6 +99,100 @@ public class DomainTest {
|
||||
assertEquals(count + 1, getDomsCount());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateDomain() {
|
||||
String user = "aaa00";
|
||||
String grantingTicketURL = cas.getGrantingTicketURL(user);
|
||||
|
||||
// first create the domain
|
||||
Map<String, Object> setParams = new HashMap<String, Object>();
|
||||
setParams.put("name", "exampleupdate.de");
|
||||
setParams.put("user", "aaa00-admin");
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
setParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".add", params);
|
||||
assertTrue(execute instanceof Map<?, ?>);
|
||||
} catch (XmlRpcException e) {
|
||||
fail(e.getMessage());
|
||||
}
|
||||
|
||||
// check initial values
|
||||
Map<String, String> whereParams = new HashMap<String, String>();
|
||||
whereParams.put("name", "exampleupdate.de");
|
||||
params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
whereParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".search", params);
|
||||
if (execute instanceof Object[]) {
|
||||
Object[] result = (Object[]) execute;
|
||||
assertTrue("expected 1 result, but got " + result.length, 1 == result.length);
|
||||
for (Object o : result) {
|
||||
if (o instanceof Map<?, ?>) {
|
||||
Map<?, ?> row = (Map<?, ?>) o;
|
||||
assertTrue("Domain name should be exampleupdate.de but is " + row.get("name"), "exampleupdate.de".equals(row.get("name")));
|
||||
assertTrue("ValidSubdomainNames should be * but is " + row.get("validsubdomainnames"), "*".equals(row.get("validsubdomainnames")));
|
||||
Object[] domainoptions = (Object[]) row.get("domainoptions");
|
||||
String options = "";
|
||||
for (Object option: domainoptions) {
|
||||
options += option + " ";
|
||||
}
|
||||
String defaultDomainOptions = "htdocsfallback indexes dkim autoconfig greylisting includes letsencrypt multiviews ";
|
||||
assertTrue("Domainoptions should be " + defaultDomainOptions + " but are " + options, defaultDomainOptions.equals(options));
|
||||
}
|
||||
else {
|
||||
fail("Map<?, ?> expected");
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
fail("Object[] expected");
|
||||
}
|
||||
} catch (XmlRpcException e) {
|
||||
fail(e.getMessage());
|
||||
}
|
||||
|
||||
// now update the domain
|
||||
setParams = new HashMap<String, Object>();
|
||||
whereParams = new HashMap<String, String>();
|
||||
setParams.put("validsubdomainnames", "www2");
|
||||
setParams.put("domainoptions", new String[] {"greylisting", "letsencrypt"});
|
||||
whereParams.put("name", "exampleupdate.de");
|
||||
params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
setParams, whereParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".update", params);
|
||||
if (execute instanceof Object[]) {
|
||||
Object[] result = (Object[]) execute;
|
||||
assertTrue("expected 1 result, but got " + result.length, 1 == result.length);
|
||||
for (Object o : result) {
|
||||
if (o instanceof Map<?, ?>) {
|
||||
Map<?, ?> row = (Map<?, ?>) o;
|
||||
assertTrue("Domain name should be exampleupdate.de but is " + row.get("name"), "exampleupdate.de".equals(row.get("name")));
|
||||
assertTrue("ValidSubdomainNames should be www2 but is " + row.get("validsubdomainnames"), "www2".equals(row.get("validsubdomainnames")));
|
||||
Object[] domainoptions = (Object[]) row.get("domainoptions");
|
||||
String options = "";
|
||||
for (Object option: domainoptions) {
|
||||
options += option + " ";
|
||||
}
|
||||
assertTrue("Domainoptions should be greylisting letsencrypt but are " + options, "greylisting letsencrypt ".equals(options));
|
||||
}
|
||||
else {
|
||||
fail("Map<?, ?> expected");
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
fail("Object[] expected");
|
||||
}
|
||||
} catch (XmlRpcException e) {
|
||||
fail(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCreateForeignSubdomain() throws UnknownHostException, IOException {
|
||||
int count = getDomsCount();
|
||||
@ -107,8 +201,8 @@ public class DomainTest {
|
||||
Map<String, String> setParams = new HashMap<String, String>();
|
||||
setParams.put("name", "f6n.de");
|
||||
setParams.put("user", "aaa00-admin");
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
setParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".add", params);
|
||||
@ -123,8 +217,8 @@ public class DomainTest {
|
||||
setParams = new HashMap<String, String>();
|
||||
setParams.put("name", "subdomain.f6n.de");
|
||||
setParams.put("user", "aaa01");
|
||||
params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
setParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".add", params);
|
||||
@ -140,8 +234,8 @@ public class DomainTest {
|
||||
String user = "aaa00";
|
||||
String grantingTicketURL = cas.getGrantingTicketURL(user);
|
||||
Map<String, String> whereParams = new HashMap<String, String>();
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
Object[] params = new Object[] { user,
|
||||
cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()),
|
||||
whereParams };
|
||||
try {
|
||||
Object execute = client.execute(MODULE + ".search", params);
|
||||
|
Loading…
Reference in New Issue
Block a user