diff options
Diffstat (limited to 'id/server/idserverlib/src/test/java')
18 files changed, 3 insertions, 1408 deletions
| diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/module/test/TestRequestImpl.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/module/test/TestRequestImpl.java deleted file mode 100644 index 9b6eedb11..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/module/test/TestRequestImpl.java +++ /dev/null @@ -1,285 +0,0 @@ -/* - * Copyright 2014 Federal Chancellery Austria - * MOA-ID has been developed in a cooperation between BRZ, the Federal - * Chancellery Austria - ICT staff unit, and Graz University of Technology. - * - * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by - * the European Commission - subsequent versions of the EUPL (the "Licence"); - * You may not use this work except in compliance with the Licence. - * You may obtain a copy of the Licence at: - * http://www.osor.eu/eupl/ - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the Licence is distributed on an "AS IS" basis, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the Licence for the specific language governing permissions and - * limitations under the Licence. - * - * This product combines work with different licenses. See the "NOTICE" text - * file for details on the various modules and licenses. - * The "NOTICE" text file is part of the distribution. Any derivative works - * that you distribute must include a readable copy of the "NOTICE" text file. - */ -package at.gv.egovernment.moa.id.module.test; - -import java.util.Collection; - -import org.opensaml.saml2.metadata.provider.MetadataProvider; - -import at.gv.egiz.eaaf.core.api.IOAAuthParameters; -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egovernment.moa.id.commons.api.data.IAuthenticationSession; -import at.gv.egovernment.moa.id.commons.api.exceptions.SessionDataStorageException; - -/** - * @author tlenz - * - */ -public class TestRequestImpl implements IRequest { - -	private String processInstanceID = null;  -	 -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#requestedModule() -	 */ -	@Override -	public String requestedModule() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#requestedAction() -	 */ -	@Override -	public String requestedAction() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getOAURL() -	 */ -	@Override -	public String getOAURL() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#isPassiv() -	 */ -	@Override -	public boolean isPassiv() { -		// TODO Auto-generated method stub -		return false; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#forceAuth() -	 */ -	@Override -	public boolean forceAuth() { -		// TODO Auto-generated method stub -		return false; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getGenericData(java.lang.String) -	 */ -	@Override -	public Object getGenericData(String key) { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getGenericData(java.lang.String, java.lang.Class) -	 */ -	@Override -	public <T> T getGenericData(String key, Class<T> clazz) { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#setGenericDataToSession(java.lang.String, java.lang.Object) -	 */ -	@Override -	public void setGenericDataToSession(String key, Object object) throws SessionDataStorageException { -		// TODO Auto-generated method stub - -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getRequestID() -	 */ -	@Override -	public String getRequestID() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getUniqueTransactionIdentifier() -	 */ -	@Override -	public String getUniqueTransactionIdentifier() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getUniqueSessionIdentifier() -	 */ -	@Override -	public String getUniqueSessionIdentifier() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getProcessInstanceId() -	 */ -	@Override -	public String getProcessInstanceId() { -		return processInstanceID; -		 -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getAuthURL() -	 */ -	@Override -	public String getAuthURL() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getAuthURLWithOutSlash() -	 */ -	@Override -	public String getAuthURLWithOutSlash() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#isNeedAuthentication() -	 */ -	@Override -	public boolean isNeedAuthentication() { -		// TODO Auto-generated method stub -		return false; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#needSingleSignOnFunctionality() -	 */ -	@Override -	public boolean needSingleSignOnFunctionality() { -		// TODO Auto-generated method stub -		return false; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#setNeedSingleSignOnFunctionality(boolean) -	 */ -	@Override -	public void setNeedSingleSignOnFunctionality(boolean needSSO) { -		// TODO Auto-generated method stub - -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#isAuthenticated() -	 */ -	@Override -	public boolean isAuthenticated() { -		// TODO Auto-generated method stub -		return false; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#setAuthenticated(boolean) -	 */ -	@Override -	public void setAuthenticated(boolean isAuthenticated) { -		// TODO Auto-generated method stub - -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getOnlineApplicationConfiguration() -	 */ -	@Override -	public IOAAuthParameters getOnlineApplicationConfiguration() { -		// TODO Auto-generated method stub -		return null; -	} - -	/** -	 * @param processInstanceID the processInstanceID to set -	 */ -	public void setProcessInstanceID(String processInstanceID) { -		this.processInstanceID = processInstanceID; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#isAbortedByUser() -	 */ -	@Override -	public boolean isAbortedByUser() { -		// TODO Auto-generated method stub -		return false; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#setAbortedByUser(boolean) -	 */ -	@Override -	public void setAbortedByUser(boolean isAborted) { -		// TODO Auto-generated method stub -		 -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.moduls.IRequest#getRequestedAttributes() -	 */ -	@Override -	public Collection<String> getRequestedAttributes(MetadataProvider metadataProvider) { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.commons.api.IRequest#getInternalSSOSessionIdentifier() -	 */ -	@Override -	public String getInternalSSOSessionIdentifier() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.commons.api.IRequest#getMOASession() -	 */ -	@Override -	public IAuthenticationSession getMOASession() { -		// TODO Auto-generated method stub -		return null; -	} - -	/* (non-Javadoc) -	 * @see at.gv.egovernment.moa.id.commons.api.IRequest#populateMOASessionWithSSOInformation(at.gv.egovernment.moa.id.commons.api.data.IAuthenticationSession) -	 */ -	@Override -	public void populateMOASessionWithSSOInformation(IAuthenticationSession ssoSession) { -		// TODO Auto-generated method stub -		 -	} -	 -	 - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/DummyTransactionStorage.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/DummyTransactionStorage.java deleted file mode 100644 index 08fb4e043..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/DummyTransactionStorage.java +++ /dev/null @@ -1,147 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test; - -import java.util.ArrayList; -import java.util.Date; -import java.util.Iterator; -import java.util.List; - -import javax.sql.DataSource; - -import at.gv.egiz.eaaf.core.api.storage.ITransactionStorage; -import at.gv.egovernment.moa.id.auth.exception.AuthenticationException; -import at.gv.egovernment.moa.id.commons.db.ex.MOADatabaseException; -import at.gv.egovernment.moa.logging.Logger; - -/** - * Dummy DataSource implementation for convenience in test cases where a - * database connection will never actually be acquired. - * - * @see DataSource - * @author Chris Beams - */ -public class DummyTransactionStorage implements ITransactionStorage { - -	public class DummyDBEntry{ -		public DummyDBEntry(String key, Object value){ -			this.obj =value; -			this.key = key; -		} -		public String getKey() { -			return key; -		} -		public void setKey(String key) { -			this.key = key; -		} -		public Object getObj() { -			return obj; -		} -		public void setObj(Object obj) { -			this.obj = obj; -		} -		private String key; -		private Object obj; -	} -	 -	private ArrayList<DummyDBEntry> ds = new ArrayList<DummyDBEntry>(); -	 - -	 -	@Override -	public boolean containsKey(String key) { -		// TODO Auto-generated method stub -		Iterator<DummyDBEntry> it = ds.iterator(); -		while(it.hasNext()){ -			DummyDBEntry t = it.next(); -			if(t.getKey().equals(key)) -				return true; -		} -		return false; -	} - -	@Override -	public void put(String key, Object value, int timeout_ms) -			throws MOADatabaseException { -		// TODO Auto-generated method stub -		this.remove(key); -		this.ds.add(new DummyDBEntry(key, value)); -		 -	} - -	@Override -	public Object get(String key) throws MOADatabaseException { -		// TODO Auto-generated method stub -		Iterator<DummyDBEntry> it = ds.iterator(); -		while(it.hasNext()){ -			DummyDBEntry t = it.next(); -			if(t.getKey().equals(key)) -				return t; -		} -		return null; -	} - -	@Override -	public <T> T get(String key, Class<T> clazz) throws MOADatabaseException { -		 -		  DummyDBEntry o = (DummyDBEntry) get(key); -		  if(o == null) -			  return null; -		  try { -			  @SuppressWarnings("unchecked") -			T test = (T) (clazz.cast(o.getObj())); -			return test; -			 -		  } catch (Exception e) { -			Logger.warn("Sessioninformation Cast-Exception by using Artifact=" + key); -			throw new MOADatabaseException("Sessioninformation Cast-Exception"); -			 -		  } -	} - -	@Override -	public <T> T get(String key, Class<T> clazz, long dataTimeOut) -			throws MOADatabaseException, AuthenticationException { -		// TODO Auto-generated method stub -		return get(key,clazz); -	} - -	@Override -	public void changeKey(String oldKey, String newKey, Object value) -			throws MOADatabaseException { -		this.remove(oldKey); -		this.put(newKey, value, -1); -		 -	} - -	@Override -	public void remove(String key) { -		Iterator<DummyDBEntry> it = ds.iterator(); -		while(it.hasNext()){ -			DummyDBEntry t = it.next(); -			if(t.getKey().equals(key)){ -				this.ds.remove(t); -				return; -			} -		} -		 -	} - -	@Override -	public List<String> clean(Date now, long dataTimeOut) { -		// TODO Auto-generated method stub -		return null; -	} - -	@Override -	public Object getAssertionStore(String key) throws MOADatabaseException { -		// TODO Auto-generated method stub -		return null; -	} - -	@Override -	public void putAssertionStore(Object element) throws MOADatabaseException { -		// TODO Auto-generated method stub -		 -	} - -     -}
\ No newline at end of file diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/ExpressionContextAdapter.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/ExpressionContextAdapter.java deleted file mode 100644 index c26236619..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/ExpressionContextAdapter.java +++ /dev/null @@ -1,52 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test; - - -import java.io.Serializable; -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -import at.gv.egovernment.moa.id.process.api.ExpressionEvaluationContext; - -/** - * Adapter class for {@link ExpressionEvaluationContext}. Intended to be used for testing purposes. - *  - * @author tknall - *  - */ -public class ExpressionContextAdapter implements ExpressionEvaluationContext { - -	private static final long serialVersionUID = 1L; - -	private Map<String, Serializable> ctxData = Collections.synchronizedMap(new HashMap<String, Serializable>()); - -	/** -	 * Returns a certain {@link Serializable} object associated with a certain {@code key}. -	 *  -	 * @param key -	 *            The key. -	 * @return The object or {@code null} if no object was found stored with that key or if a {@code null} value was -	 *         stored. -	 */ -	Serializable get(String key) { -		return ctxData.get(key); -	} - -	/** -	 * Stores a {@link Serializable} with a certain {@code key}. -	 *  -	 * @param key -	 *            The key. -	 * @param object -	 *            The object. -	 */ -	void put(String key, Serializable object) { -		ctxData.put(key, object); -	} - -	@Override -	public Map<String, Serializable> getCtx() { -		return Collections.unmodifiableMap(ctxData); -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SimplePojo.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SimplePojo.java deleted file mode 100644 index 89f3c0383..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SimplePojo.java +++ /dev/null @@ -1,41 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test; - -import at.gv.egovernment.moa.id.process.api.ExpressionEvaluator; - -/** - * A dummy pojo used to test {@link ExpressionEvaluator} with Spring EL referencing Spring beans. - *  - * @author tknall - *  - */ -public class SimplePojo { - -	private Boolean booleanValue; -	private String stringValue; -	private Integer integerValue; - -	public Boolean getBooleanValue() { -		return booleanValue; -	} - -	public void setBooleanValue(Boolean booleanValue) { -		this.booleanValue = booleanValue; -	} - -	public String getStringValue() { -		return stringValue; -	} - -	public void setStringValue(String stringValue) { -		this.stringValue = stringValue; -	} - -	public Integer getIntegerValue() { -		return integerValue; -	} - -	public void setIntegerValue(Integer integerValue) { -		this.integerValue = integerValue; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionAwareProcessEngineTest.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionAwareProcessEngineTest.java deleted file mode 100644 index c06735f9e..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionAwareProcessEngineTest.java +++ /dev/null @@ -1,154 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test; - -import static at.gv.egovernment.moa.id.process.ProcessInstanceState.NOT_STARTED; -import static at.gv.egovernment.moa.id.process.ProcessInstanceState.SUSPENDED; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; - -import java.io.IOException; -import java.io.InputStream; -import java.util.Properties; - -import org.hibernate.cfg.Configuration; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -import at.gv.egovernment.moa.id.commons.db.dao.session.AssertionStore; -import at.gv.egovernment.moa.id.module.test.TestRequestImpl; -import at.gv.egovernment.moa.id.process.ProcessDefinitionParserException; -import at.gv.egovernment.moa.id.process.ProcessEngine; -import at.gv.egovernment.moa.id.process.ProcessEngineImpl; -import at.gv.egovernment.moa.id.process.ProcessExecutionException; -import at.gv.egovernment.moa.id.process.ProcessInstance; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.spring.SpringExpressionEvaluator; - -/** - * Tests the process engine using processes based on Spring EL referencing the process context and further Spring beans. - *  - * @author tknall - *  - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration("/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionAwareProcessEngineTest-context.xml") -public class SpringExpressionAwareProcessEngineTest { - -	@Autowired private static ProcessEngine pe; -	@Autowired private ApplicationContext applicationContext; -	 -	private boolean isInitialized = false; - -	@Before -	public void init() throws IOException, ProcessDefinitionParserException { - -		if (!isInitialized) { - -			if (pe == null) { -				pe = applicationContext.getBean("processEngine", ProcessEngine.class); -				 -			} - -			((ProcessEngineImpl) pe).setTransitionConditionExpressionEvaluator(new SpringExpressionEvaluator()); -			try (InputStream in = SpringExpressionAwareProcessEngineTest.class.getResourceAsStream("SampleProcessDefinitionWithExpression1.xml")) { -				((ProcessEngineImpl) pe).registerProcessDefinition(in); -			} -			try (InputStream in = SpringExpressionAwareProcessEngineTest.class.getResourceAsStream("SampleProcessDefinitionForSAML1Authentication.xml")) { -				((ProcessEngineImpl) pe).registerProcessDefinition(in); -			} - -		initHibernateForTesting(); -		} -	} - -	private static void initHibernateForTesting() throws IOException{ - -		InputStream in = SpringExpressionAwareProcessEngineTest.class.getResourceAsStream("/at/gv/egovernment/moa/id/process/hibernate.configuration.test.properties"); -		Properties props = new Properties(); -		props.load(in); - -		try { -			//ConfigurationDBUtils.initHibernate(props); -			Configuration config = new Configuration(); -			config.addProperties(props); -			//config.addAnnotatedClass(ProcessInstanceStore.class); -			config.addAnnotatedClass(AssertionStore.class); -			//MOASessionDBUtils.initHibernate(config, props); -		} catch (Exception e) { -			e.printStackTrace(); -		} -	} - - -	@Test -	public void testSampleProcessDefinitionWithExpression1() throws IOException, ProcessDefinitionParserException, ProcessExecutionException { - -		TestRequestImpl req =  new TestRequestImpl(); -		 -		String piId = pe.createProcessInstance("SampleProcessWithExpression1"); -		ProcessInstance pi = pe.getProcessInstance(piId); -		assertEquals(NOT_STARTED, pi.getState()); -		 -		 -		// start process -		req.setProcessInstanceID(piId); -		pe.start(req); -		 -		//processInstance should be removed when it ends -		try { -			pi = pe.getProcessInstance(piId); -			throw new ProcessExecutionException("ProcessInstance should be removed already, but it was found."); -			//assertEquals(ENDED, pi.getState()); -			 -		} catch (IllegalArgumentException e) { -			// do nothing because processInstance should be already removed  -			 -		} -	} - -	@Test -	public void testSampleProcessDefinitionForSAML1Authentication() throws IOException, ProcessDefinitionParserException, ProcessExecutionException { - -		TestRequestImpl req =  new TestRequestImpl(); -		 -		String piId = pe.createProcessInstance("SampleProcessDefinitionForSAML1Authentication"); -		ProcessInstance pi = pe.getProcessInstance(piId); -		assertEquals(NOT_STARTED, pi.getState()); - -		// start process -		req.setProcessInstanceID(piId); -		pe.start(req);		 -		pi = pe.getProcessInstance(piId); -		assertEquals(SUSPENDED, pi.getState()); -		 -		ExecutionContext ec = pi.getExecutionContext(); -		assertNotNull(ec); -		System.out.println(ec.keySet()); - -		assertNotNull(ec.get("bkuURL")); -		assertNotNull(ec.get("IdentityLink")); -		assertNotNull(ec.get("isIdentityLinkValidated")); -		assertNotNull(ec.get("SignedAuthBlock")); -		assertNotNull(ec.get("isSignedAuthBlockValidated")); -		assertNotNull(ec.get("SAML1Assertion")); -		 -		pe.signal(req); -		try { -			pi = pe.getProcessInstance(piId); -			throw new ProcessExecutionException("ProcessInstance should be removed already, but it was found."); -			//assertEquals(ENDED, pi.getState()); -			 -		} catch (IllegalArgumentException e) { -			// do nothing because processInstance should be already removed  -			 -		} - - - -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionEvaluatorTest.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionEvaluatorTest.java deleted file mode 100644 index bc9d1d399..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionEvaluatorTest.java +++ /dev/null @@ -1,54 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test; - -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; - -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -import at.gv.egovernment.moa.id.process.api.ExpressionEvaluator; - -/** - * Tests the {@link ExpressionEvaluator} using a Spring EL based implementation capable of dereferencing Spring beans. - *  - * @author tknall - *  - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class SpringExpressionEvaluatorTest { - -	private ExpressionContextAdapter ctx; - -	@Autowired -	private ExpressionEvaluator expressionEvaluator; - -	@Before -	public void prepareTest() { -		ctx = new ExpressionContextAdapter(); -	} - -	@Test -	public void testEvaluateSimpleExpression() { -		assertTrue(expressionEvaluator.evaluate(ctx, "'true'")); -	} - -	@Test -	public void testEvaluateExpressionWithCtx() { -		ctx.put("myProperty", false); -		assertFalse(expressionEvaluator.evaluate(ctx, "ctx['myProperty']")); -	} - -	@Test -	public void testEvaluateExpressionWithBeanReference() { -		assertTrue(expressionEvaluator.evaluate(ctx, "@simplePojo.booleanValue")); -		assertTrue(expressionEvaluator.evaluate(ctx, "'HelloWorld'.equals(@simplePojo.stringValue)")); -		assertTrue(expressionEvaluator.evaluate(ctx, "@simplePojo.integerValue == 42")); -		assertTrue(expressionEvaluator.evaluate(ctx, "@simplePojo.stringValue.length() == 10")); -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/CreateSAML1AssertionTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/CreateSAML1AssertionTask.java deleted file mode 100644 index d3b9789fc..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/CreateSAML1AssertionTask.java +++ /dev/null @@ -1,63 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test.task; - -import java.io.IOException; -import java.io.InputStream; -import java.nio.charset.Charset; -import java.util.Objects; - -import org.apache.commons.io.IOUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egiz.eaaf.core.exceptions.TaskExecutionException; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * A dummy task simulating the creation of a SAML1 assertion. - * <p> - * Requires context data: - * <ul> - * <li>{@code IdentityLink}</li> - * <li>{@code isIdentityLinkValidated}</li> - * <li>{@code SignedAuthBlock}</li> - * <li>{@code isSignedAuthBlockValidated}</li> - * </ul> - * </p> - * <p> - * Enriches context data with: - * <ul> - * <li>{@code SAML1Assertion}</li> - * </ul> - * </p> - *  - * @author tknall - *  - */ -@Service("CreateSAML1AssertionTask") -public class CreateSAML1AssertionTask implements Task { - -	private Logger log = LoggerFactory.getLogger(getClass()); - -	@Override -	public IRequest execute(IRequest penReq, ExecutionContext executionContext) throws TaskExecutionException { -		Objects.requireNonNull(executionContext.get("IdentityLink")); -		assert (Boolean.TRUE.equals(Objects.requireNonNull(executionContext.get("isIdentityLinkValidated")))); -		Objects.requireNonNull(executionContext.get("SignedAuthBlock")); -		assert (Boolean.TRUE.equals(Objects.requireNonNull(executionContext.get("isSignedAuthBlockValidated")))); - -		log.debug("Using IdentityLink and signed auth block in order to create SAML1 assertion."); - -		try (InputStream in = getClass().getResourceAsStream("SAML1Assertion.xml")) { -			executionContext.put("SAML1Assertion", IOUtils.toString(in, Charset.forName("UTF-8"))); -			 -		} catch (IOException e) { -			throw new TaskExecutionException(null, "", e); -		} - -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/GetIdentityLinkTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/GetIdentityLinkTask.java deleted file mode 100644 index 7657f1c1f..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/GetIdentityLinkTask.java +++ /dev/null @@ -1,59 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test.task; - -import java.io.IOException; -import java.io.InputStream; -import java.nio.charset.Charset; -import java.util.Objects; - -import org.apache.commons.io.IOUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egiz.eaaf.core.exceptions.TaskExecutionException; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * A dummy task simulating the retrieval of an IdentityLink. - * <p/> - * Asynchonous - * <p> - * Requires context data: - * <ul> - * <li>{@code bkuURL}</li> - * </ul> - * </p> - * <p> - * Enriches context data with: - * <ul> - * <li>{@code IdentityLink}</li> - * </ul> - * </p> - *  - * @author tknall - *  - */ -@Service("GetIdentityLinkTask") -public class GetIdentityLinkTask implements Task { - -	private Logger log = LoggerFactory.getLogger(getClass()); - -	@Override -	public IRequest execute(IRequest penReq, ExecutionContext executionContext) throws TaskExecutionException { -		Objects.requireNonNull(executionContext.get("bkuURL")); - -		log.debug("Using bkuURL in order to retrieve IdentityLink."); - -		try (InputStream in = getClass().getResourceAsStream("IdentityLink_Max_Mustermann.xml")) { -			executionContext.put("IdentityLink", IOUtils.toString(in, Charset.forName("UTF-8"))); -			 -		} catch (IOException e) { -			throw new TaskExecutionException(null, "", e); -		} -		 -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/SelectBKUTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/SelectBKUTask.java deleted file mode 100644 index 1163a0706..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/SelectBKUTask.java +++ /dev/null @@ -1,37 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test.task; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * A dummy task simulating a bku selection. - * <p/> - * Asynchonous - * <p> - * Enriches context data with: - * <ul> - * <li>{@code bkuURL}</li> - * </ul> - * </p> - *  - * @author tknall - *  - */ -@Service("SelectBKUTask") -public class SelectBKUTask implements Task { - -	private Logger log = LoggerFactory.getLogger(getClass()); - -	@Override -	public IRequest execute(IRequest penReq, ExecutionContext executionContext) { -		log.debug("Providing BKU selection."); -		executionContext.put("bkuURL", "https://127.0.0.1:3496/https-security-layer-request"); -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/SignAuthBlockTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/SignAuthBlockTask.java deleted file mode 100644 index 1d10b08a8..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/SignAuthBlockTask.java +++ /dev/null @@ -1,61 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test.task; - -import java.io.IOException; -import java.io.InputStream; -import java.nio.charset.Charset; -import java.util.Objects; - -import org.apache.commons.io.IOUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egiz.eaaf.core.exceptions.TaskExecutionException; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * A dummy task simulating the signature of an auth block. - * <p/> - * Asynchonous - * <p> - * Requires context data: - * <ul> - * <li>{@code IdentityLink}</li> - * <li>{@code isIdentityLinkValidated}</li> - * <li>{@code bkuURL}</li> - * </ul> - * </p> - * <p> - * Enriches context data with: - * <ul> - * <li>{@code SignedAuthBlock}</li> - * </ul> - * </p> - *  - * @author tknall - *  - */ -@Service("SignAuthBlockTask") -public class SignAuthBlockTask implements Task { - -	private Logger log = LoggerFactory.getLogger(getClass()); - -	@Override -	public IRequest execute(IRequest penReq, ExecutionContext executionContext) throws TaskExecutionException { -		Objects.requireNonNull(executionContext.get("IdentityLink")); -		assert (Boolean.TRUE.equals(Objects.requireNonNull(executionContext.get("isIdentityLinkValidated")))); -		Objects.requireNonNull(executionContext.get("bkuURL")); - -		log.debug("Using validated IdentityLink and bkuURL in order to sign auth block."); -		try (InputStream in = getClass().getResourceAsStream("SignedAuthBlock.xml")) { -			executionContext.put("SignedAuthBlock", IOUtils.toString(in, Charset.forName("UTF-8"))); -		} catch (IOException e) { -			throw new TaskExecutionException(null, "", e); -						 -		} -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/ValidateIdentityLinkTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/ValidateIdentityLinkTask.java deleted file mode 100644 index 19a87d520..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/ValidateIdentityLinkTask.java +++ /dev/null @@ -1,46 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test.task; - -import java.util.Objects; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * Dummy task simulating the validation of an IdentityLink. - * <p> - * Requires context data: - * <ul> - * <li>{@code IdentityLink}</li> - * </ul> - * </p> - * <p> - * Enriches context data with: - * <ul> - * <li>{@code isIdentityLinkValidated}</li> - * </ul> - * </p> - *  - * @author tknall - *  - */ -@Service("ValidateIdentityLinkTask") -public class ValidateIdentityLinkTask implements Task { - -	private Logger log = LoggerFactory.getLogger(getClass()); - -	@Override -	public IRequest execute(IRequest penReq, ExecutionContext executionContext) { -		Objects.requireNonNull(executionContext.get("IdentityLink")); - -		log.debug("Validating IdentityLink."); - -		executionContext.put("isIdentityLinkValidated", true); -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/ValidateSignedAuthBlockTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/ValidateSignedAuthBlockTask.java deleted file mode 100644 index afae6463d..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/spring/test/task/ValidateSignedAuthBlockTask.java +++ /dev/null @@ -1,51 +0,0 @@ -package at.gv.egovernment.moa.id.process.spring.test.task; - -import java.util.Objects; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egiz.eaaf.core.exceptions.TaskExecutionException; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * A dummy task simulating the validation of an auth block. - * <p> - * Requires context data: - * <ul> - * <li>{@code IdentityLink}</li> - * <li>{@code isIdentityLinkValidated}</li> - * <li>{@code SignedAuthBlock}</li> - * </ul> - * </p> - * <p> - * Enriches context data with: - * <ul> - * <li>{@code isSignedAuthBlockValidated}</li> - * </ul> - * </p> - *  - * @author tknall - *  - */ -@Service("ValidateSignedAuthBlockTask") -public class ValidateSignedAuthBlockTask implements Task { - -	private Logger log = LoggerFactory.getLogger(getClass()); - -	@Override -	public IRequest execute(IRequest penReq, ExecutionContext executionContext) throws TaskExecutionException { -		Objects.requireNonNull(executionContext.get("IdentityLink")); -		assert (Boolean.TRUE.equals(Objects.requireNonNull(executionContext.get("isIdentityLinkValidated")))); -		Objects.requireNonNull(executionContext.get("SignedAuthBlock")); - -		log.debug("Using validated IdentityLink and signed auth block in order to validate signed auth block."); - -		executionContext.put("isSignedAuthBlockValidated", true); -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/BooleanStringExpressionEvaluator.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/BooleanStringExpressionEvaluator.java deleted file mode 100644 index 20dfc50ef..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/BooleanStringExpressionEvaluator.java +++ /dev/null @@ -1,24 +0,0 @@ -package at.gv.egovernment.moa.id.process.test; - -import java.util.Objects; - -import org.apache.commons.lang3.BooleanUtils; - -import at.gv.egovernment.moa.id.process.api.ExpressionEvaluationContext; -import at.gv.egovernment.moa.id.process.api.ExpressionEvaluator; - -/** - * Expression evaluator that guesses the boolean value from a String. Refer to {@link BooleanUtils#toBoolean(String)} - * for further information. - *  - * @author tknall - *  - */ -public class BooleanStringExpressionEvaluator implements ExpressionEvaluator { - -	@Override -	public boolean evaluate(ExpressionEvaluationContext expressionContext, String expression) { -		return BooleanUtils.toBoolean(Objects.requireNonNull(expression, "Expression must not be null.")); -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/HalloWeltTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/HalloWeltTask.java deleted file mode 100644 index d808713c1..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/HalloWeltTask.java +++ /dev/null @@ -1,24 +0,0 @@ -package at.gv.egovernment.moa.id.process.test; - -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * Simple task that just outputs a "Hallo World" text to the console. - *  - * @author tknall - *  - */ -@Service("HalloWeltTask") -public class HalloWeltTask implements Task { - -	@Override -	public IRequest execute(IRequest pendingReq, ExecutionContext executionContext) { -		System.out.println("Hallo Welt"); -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/HelloWorldTask.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/HelloWorldTask.java deleted file mode 100644 index ee02d0030..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/HelloWorldTask.java +++ /dev/null @@ -1,24 +0,0 @@ -package at.gv.egovernment.moa.id.process.test; - -import org.springframework.stereotype.Service; - -import at.gv.egiz.eaaf.core.api.IRequest; -import at.gv.egovernment.moa.id.process.api.ExecutionContext; -import at.gv.egovernment.moa.id.process.api.Task; - -/** - * Simple task that just outputs a "Hello World" text to the console. - *  - * @author tknall - *  - */ -@Service("HelloWorldTask") -public class HelloWorldTask implements Task { - -	@Override -	public IRequest execute(IRequest pendingReq, ExecutionContext executionContext) { -		System.out.println("Hello World"); -		return null; -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/ProcessDefinitionParserTest.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/ProcessDefinitionParserTest.java deleted file mode 100644 index df13f064b..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/ProcessDefinitionParserTest.java +++ /dev/null @@ -1,137 +0,0 @@ -package at.gv.egovernment.moa.id.process.test; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; - -import java.io.IOException; -import java.io.InputStream; - -import org.junit.Test; - -import at.gv.egovernment.moa.id.process.ProcessDefinitionParser; -import at.gv.egovernment.moa.id.process.ProcessDefinitionParserException; -import at.gv.egovernment.moa.id.process.model.EndEvent; -import at.gv.egovernment.moa.id.process.model.ProcessDefinition; -import at.gv.egovernment.moa.id.process.model.ProcessNode; -import at.gv.egovernment.moa.id.process.model.StartEvent; -import at.gv.egovernment.moa.id.process.model.TaskInfo; -import at.gv.egovernment.moa.id.process.model.Transition; - -public class ProcessDefinitionParserTest { -	 -	@Test(expected = ProcessDefinitionParserException.class) -	public void testParseInvalidProcessDefinition_MultipleStartEvents() throws IOException, ProcessDefinitionParserException { -		try (InputStream in = getClass().getResourceAsStream("InvalidProcessDefinition_MultipleStartEvents.xml")) { -			new ProcessDefinitionParser().parse(in); -		} -	} -	 -	@Test(expected = ProcessDefinitionParserException.class) -	public void testParseInvalidProcessDefinition_TransitionLoop() throws IOException, ProcessDefinitionParserException { -		try (InputStream in = getClass().getResourceAsStream("InvalidProcessDefinition_TransitionLoop.xml")) { -			new ProcessDefinitionParser().parse(in); -		} -	} -	 -	@Test(expected = ProcessDefinitionParserException.class) -	public void testParseInvalidProcessDefinition_TransitionStartsFromEndEvent() throws IOException, ProcessDefinitionParserException { -		try (InputStream in = getClass().getResourceAsStream("InvalidProcessDefinition_TransitionStartsFromEndEvent.xml")) { -			new ProcessDefinitionParser().parse(in); -		} -	} -	 -	@Test(expected = ProcessDefinitionParserException.class) -	public void testParseInvalidProcessDefinition_TransitionRefsTransition() throws IOException, ProcessDefinitionParserException { -		try (InputStream in = getClass().getResourceAsStream("InvalidProcessDefinition_TransitionRefsTransition.xml")) { -			new ProcessDefinitionParser().parse(in); -		} -	} -	 -	@Test(expected = ProcessDefinitionParserException.class) -	public void testParseInvalidProcessDefinition_NoStartEvents() throws IOException, ProcessDefinitionParserException { -		try (InputStream in = getClass().getResourceAsStream("InvalidProcessDefinition_NoStartEvents.xml")) { -			new ProcessDefinitionParser().parse(in); -		} -	} -	 -	@Test -	public void testParseSampleProcessDefinition() throws IOException, ProcessDefinitionParserException { -		try (InputStream in = getClass().getResourceAsStream("SampleProcessDefinition1.xml")) { -			 -			ProcessDefinitionParser parser = new ProcessDefinitionParser(); -			ProcessDefinition pd = parser.parse(in); -			 -			assertNotNull(pd); -			assertEquals("SampleProcess1", pd.getId()); -			 -			// first assert tasks then transitions -			// start event -			StartEvent startEvent = pd.getStartEvent(); -			assertNotNull(startEvent); -			assertEquals("start", startEvent.getId()); -			assertEquals(startEvent, pd.getProcessNode("start")); -			// task1 -			ProcessNode processNode = pd.getProcessNode("task1"); -			assertNotNull(processNode); -			assertTrue(processNode instanceof TaskInfo); -			TaskInfo task1 = (TaskInfo) processNode; -			assertEquals("task1", task1.getId()); -			assertFalse(task1.isAsync()); -			// task2  -			processNode = pd.getProcessNode("task2"); -			assertNotNull(processNode); -			assertTrue(processNode instanceof TaskInfo); -			TaskInfo task2 = (TaskInfo) processNode; -			assertEquals("task2", task2.getId()); -			assertTrue(task2.isAsync()); -			// end event -			processNode = pd.getProcessNode("end"); -			assertNotNull(processNode); -			assertTrue(processNode instanceof EndEvent); -			EndEvent endEvent = (EndEvent) processNode; -			assertEquals("end", endEvent.getId()); -			 -			// assert transitions -			// start event -			assertNotNull(startEvent.getIncomingTransitions()); -			assertTrue(startEvent.getIncomingTransitions().isEmpty()); -			assertNotNull(startEvent.getOutgoingTransitions()); -			assertEquals(1, startEvent.getOutgoingTransitions().size()); -			// transition from start to task1 -			Transition startToTask1 = startEvent.getOutgoingTransitions().get(0); -			assertEquals("fromStart", startToTask1.getId()); -			assertEquals(startEvent, startToTask1.getFrom()); -			assertEquals(task1, startToTask1.getTo()); -			assertEquals("true", startToTask1.getConditionExpression()); -			// task1 -			assertNotNull(task1.getIncomingTransitions()); -			assertEquals(1, task1.getIncomingTransitions().size()); -			assertEquals(startToTask1, task1.getIncomingTransitions().get(0)); -			assertNotNull(task1.getOutgoingTransitions()); -			assertEquals(1, task1.getOutgoingTransitions().size()); -			// transition from task1 to task2 -			Transition task1ToTask2 = task1.getOutgoingTransitions().get(0); -			assertNull(task1ToTask2.getId()); -			assertEquals(task1, task1ToTask2.getFrom()); -			assertEquals(task2, task1ToTask2.getTo()); -			assertNull(task1ToTask2.getConditionExpression()); -			// task2 -			assertNotNull(task2.getIncomingTransitions()); -			assertEquals(1, task2.getIncomingTransitions().size()); -			assertEquals(task1ToTask2, task2.getIncomingTransitions().get(0)); -			assertNotNull(task2.getOutgoingTransitions()); -			assertEquals(1, task2.getOutgoingTransitions().size()); -			// transition from task2 to end -			Transition task2ToEnd = task2.getOutgoingTransitions().get(0); -			assertNull(task2ToEnd.getId()); -			assertEquals(task2, task2ToEnd.getFrom()); -			assertEquals(endEvent, task2ToEnd.getTo()); -			assertNull(task2ToEnd.getConditionExpression()); -			 -		} -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/ProcessEngineTest.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/ProcessEngineTest.java deleted file mode 100644 index 6744c0403..000000000 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/process/test/ProcessEngineTest.java +++ /dev/null @@ -1,146 +0,0 @@ -package at.gv.egovernment.moa.id.process.test; - -import static at.gv.egovernment.moa.id.process.ProcessInstanceState.NOT_STARTED; -import static at.gv.egovernment.moa.id.process.ProcessInstanceState.SUSPENDED; -import static org.junit.Assert.assertEquals; - -import java.io.IOException; -import java.io.InputStream; -import java.util.Properties; - -import org.hibernate.cfg.Configuration; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -import at.gv.egovernment.moa.id.commons.db.dao.session.AssertionStore; -import at.gv.egovernment.moa.id.module.test.TestRequestImpl; -import at.gv.egovernment.moa.id.process.ProcessDefinitionParser; -import at.gv.egovernment.moa.id.process.ProcessDefinitionParserException; -import at.gv.egovernment.moa.id.process.ProcessEngine; -import at.gv.egovernment.moa.id.process.ProcessEngineImpl; -import at.gv.egovernment.moa.id.process.ProcessExecutionException; -import at.gv.egovernment.moa.id.process.ProcessInstance; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration("/at/gv/egovernment/moa/id/process/spring/test/SpringExpressionAwareProcessEngineTest-context.xml") -public class ProcessEngineTest { -	 -	@Autowired private static ProcessEngine pe; - -	@Autowired private ApplicationContext applicationContext; -	 -	private boolean isInitialized = false; -	 -	@Before -	public void init() throws IOException, ProcessDefinitionParserException { -		 -		if (!isInitialized) { -			ProcessDefinitionParser pdp = new ProcessDefinitionParser(); - -			if (pe == null) { -				pe = applicationContext.getBean("processEngine", ProcessEngine.class); -				 -			} -			 -			((ProcessEngineImpl) pe).setTransitionConditionExpressionEvaluator(new BooleanStringExpressionEvaluator()); -			try (InputStream in = ProcessEngineTest.class.getResourceAsStream("SampleProcessDefinition1.xml")) { -				((ProcessEngineImpl) pe).registerProcessDefinition(pdp.parse(in)); -			} -			try (InputStream in = ProcessEngineTest.class.getResourceAsStream("SampleProcessDefinition2.xml")) { -				((ProcessEngineImpl) pe).registerProcessDefinition(pdp.parse(in)); -			} - -			initHibernateForTesting(); -			isInitialized = true; -		} -	} -	 -	private static void initHibernateForTesting() throws IOException{ - -		InputStream in = ProcessEngineTest.class.getResourceAsStream("/at/gv/egovernment/moa/id/process/hibernate.configuration.test.properties"); -		Properties props = new Properties(); -		props.load(in); - -		try { -			//ConfigurationDBUtils.initHibernate(props); -			Configuration config = new Configuration(); -			config.addProperties(props); -			//config.addAnnotatedClass(ProcessInstanceStore.class); -			config.addAnnotatedClass(AssertionStore.class); -			//MOASessionDBUtils.initHibernate(config, props); -		} catch (Exception e) { -			e.printStackTrace(); -		} -	} -	 -	@Test -	public void testSampleProcess1() throws IOException, ProcessDefinitionParserException, ProcessExecutionException { -		 -		TestRequestImpl testReq = new TestRequestImpl(); -		 -		String piId = pe.createProcessInstance("SampleProcess1"); -		ProcessInstance pi = pe.getProcessInstance(piId); -		assertEquals(NOT_STARTED, pi.getState()); - -		// start process -		testReq.setProcessInstanceID(piId); -		pe.start(testReq); -		pi = pe.getProcessInstance(piId); -		assertEquals(SUSPENDED, pi.getState()); - -		System.out.println("Do something asynchronously"); -		testReq.setProcessInstanceID(piId); -		pe.signal(testReq); -		try { -			pi = pe.getProcessInstance(piId); -			throw new ProcessExecutionException("ProcessInstance should be removed already, but it was found."); -			//assertEquals(ENDED, pi.getState()); -			 -		} catch (IllegalArgumentException e) { -			// do nothing because processInstance should be already removed  -			 -		} -	} -	 -	@Test -	public void testSampleProcess2() throws IOException, ProcessDefinitionParserException, ProcessExecutionException { - -		TestRequestImpl testReq = new TestRequestImpl(); -		 -		String piId = pe.createProcessInstance("SampleProcess2"); -		ProcessInstance pi = pe.getProcessInstance(piId); -		assertEquals(NOT_STARTED, pi.getState()); - -		// start process -		testReq.setProcessInstanceID(piId); -		pe.start(testReq); -		pi = pe.getProcessInstance(piId); -		assertEquals(SUSPENDED, pi.getState()); - -		System.out.println("Do something asynchronously"); -		testReq.setProcessInstanceID(piId); -		pe.signal(testReq); -		try { -			pi = pe.getProcessInstance(piId); -			throw new ProcessExecutionException("ProcessInstance should be removed already, but it was found."); -			//assertEquals(ENDED, pi.getState()); -			 -		} catch (IllegalArgumentException e) { -			// do nothing because processInstance should be already removed  -			 -		} -		 -		 -	} - -	@Test(expected = IllegalArgumentException.class) -	public void testProcessInstanceDoesNotExist() { -		pe.getProcessInstance("does not exist"); -	} - -} diff --git a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/storage/test/DBTransactionStorageTest.java b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/storage/test/DBTransactionStorageTest.java index fc415097c..0c410e966 100644 --- a/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/storage/test/DBTransactionStorageTest.java +++ b/id/server/idserverlib/src/test/java/at/gv/egovernment/moa/id/storage/test/DBTransactionStorageTest.java @@ -12,14 +12,14 @@ import org.w3c.dom.Element;  import org.xml.sax.SAXException;  import at.gv.egiz.eaaf.core.api.storage.ITransactionStorage; -import at.gv.egovernment.moa.id.commons.db.ex.MOADatabaseException; +import at.gv.egiz.eaaf.core.exceptions.EAAFException;  import at.gv.egovernment.moa.id.storage.DBTransactionStorage;  import at.gv.egovernment.moa.util.Constants;  import at.gv.util.DOMUtils;  public class DBTransactionStorageTest { -	public static void main (String[] args) throws SAXException, IOException, ParserConfigurationException, MOADatabaseException{ +	public static void main (String[] args) throws SAXException, IOException, ParserConfigurationException, EAAFException{  		DBTransactionStorageTest t = new DBTransactionStorageTest();  		t.test();  	} @@ -32,7 +32,7 @@ public class DBTransactionStorageTest {  	} -	public void test() throws SAXException, IOException, ParserConfigurationException, MOADatabaseException{ +	public void test() throws SAXException, IOException, ParserConfigurationException, EAAFException{  		ApplicationContext context = new FileSystemXmlApplicationContext("src/test/java/testBeans.xml"); | 
