[New] Added RuntimeMock.assertServiceResult and .loginAdmin()
This commit is contained in:
parent
9c7b155b9d
commit
b10a355b5e
|
@ -1 +1 @@
|
||||||
Subproject commit d0691e4d35220d94d29d642694749524b66fc66c
|
Subproject commit 540dbeab32f542b7f4e3747c191d06c66b5108a9
|
|
@ -21,21 +21,23 @@ import static org.junit.Assert.fail;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.text.MessageFormat;
|
import java.text.MessageFormat;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
import ch.eitchnet.privilege.model.Certificate;
|
||||||
|
import ch.eitchnet.utils.helper.FileHelper;
|
||||||
|
import ch.eitchnet.utils.helper.StringHelper;
|
||||||
import li.strolch.agent.api.ComponentContainer;
|
import li.strolch.agent.api.ComponentContainer;
|
||||||
import li.strolch.agent.api.StrolchAgent;
|
import li.strolch.agent.api.StrolchAgent;
|
||||||
import li.strolch.agent.api.StrolchRealm;
|
import li.strolch.agent.api.StrolchRealm;
|
||||||
import li.strolch.runtime.configuration.RuntimeConfiguration;
|
import li.strolch.runtime.configuration.RuntimeConfiguration;
|
||||||
import li.strolch.runtime.privilege.PrivilegeHandler;
|
import li.strolch.runtime.privilege.PrivilegeHandler;
|
||||||
|
import li.strolch.service.api.Service;
|
||||||
|
import li.strolch.service.api.ServiceArgument;
|
||||||
import li.strolch.service.api.ServiceHandler;
|
import li.strolch.service.api.ServiceHandler;
|
||||||
import li.strolch.service.api.ServiceResult;
|
import li.strolch.service.api.ServiceResult;
|
||||||
import li.strolch.service.api.ServiceResultState;
|
import li.strolch.service.api.ServiceResultState;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
|
|
||||||
import ch.eitchnet.utils.helper.FileHelper;
|
|
||||||
import ch.eitchnet.utils.helper.StringHelper;
|
|
||||||
|
|
||||||
public final class RuntimeMock {
|
public final class RuntimeMock {
|
||||||
|
|
||||||
private static final Logger logger = LoggerFactory.getLogger(RuntimeMock.class);
|
private static final Logger logger = LoggerFactory.getLogger(RuntimeMock.class);
|
||||||
|
@ -66,6 +68,14 @@ public final class RuntimeMock {
|
||||||
return this.container.getRealm(realm);
|
return this.container.getRealm(realm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Certificate loginAdmin() {
|
||||||
|
return getPrivilegeHandler().authenticate("admin", "admin".getBytes());
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean logout(Certificate cert) {
|
||||||
|
return getPrivilegeHandler().invalidateSession(cert);
|
||||||
|
}
|
||||||
|
|
||||||
public void mockRuntime(File targetPathF, File srcPathF) {
|
public void mockRuntime(File targetPathF, File srcPathF) {
|
||||||
|
|
||||||
this.targetPathF = targetPathF;
|
this.targetPathF = targetPathF;
|
||||||
|
@ -150,14 +160,40 @@ public final class RuntimeMock {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public <T extends ServiceArgument, U extends ServiceResult> U doService(Certificate certificate,
|
||||||
|
Service<T, U> service, T argument) {
|
||||||
|
U result = getServiceHandler().doService(certificate, service, argument);
|
||||||
|
assertServiceResult(ServiceResultState.SUCCESS, result);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
public static void assertServiceResult(ServiceResultState expectedState, Class<?> expectedResultType,
|
public static void assertServiceResult(ServiceResultState expectedState, Class<?> expectedResultType,
|
||||||
ServiceResult result) {
|
ServiceResult result) {
|
||||||
assertEquals("Expected service result of type " + expectedResultType + " but was " + result.getClass(),
|
assertEquals("Expected service result of type " + expectedResultType + " but was " + result.getClass(),
|
||||||
expectedResultType, result.getClass());
|
expectedResultType, result.getClass());
|
||||||
|
|
||||||
if (!expectedState.equals(result.getState())) {
|
if (!expectedState.equals(result.getState())) {
|
||||||
|
String errorMsg;
|
||||||
|
if (result.getThrowable() == null)
|
||||||
|
errorMsg = result.getMessage();
|
||||||
|
else
|
||||||
|
errorMsg = StringHelper.formatException(result.getThrowable());
|
||||||
|
|
||||||
fail("Expected service result state " + expectedState + " but was " + result.getState() + ": Reason: "
|
fail("Expected service result state " + expectedState + " but was " + result.getState() + ": Reason: "
|
||||||
+ StringHelper.formatException(result.getThrowable()));
|
+ errorMsg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void assertServiceResult(ServiceResultState expectedState, ServiceResult result) {
|
||||||
|
if (!expectedState.equals(result.getState())) {
|
||||||
|
String errorMsg;
|
||||||
|
if (result.getThrowable() == null)
|
||||||
|
errorMsg = result.getMessage();
|
||||||
|
else
|
||||||
|
errorMsg = StringHelper.formatException(result.getThrowable());
|
||||||
|
|
||||||
|
fail("Expected service result state " + expectedState + " but was " + result.getState() + ": Reason: "
|
||||||
|
+ errorMsg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue