package org.apache.hise; import java.util.Collection; import java.util.Collections; import java.util.Date; import java.util.List; import javax.xml.XMLConstants; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBElement; import javax.xml.bind.Marshaller; import javax.xml.bind.Unmarshaller; import javax.xml.namespace.QName; import javax.xml.validation.SchemaFactory; import junit.framework.Assert; import org.apache.hise.api.HISEUserDetails; import org.apache.hise.engine.HISEEngineImpl; import org.apache.hise.engine.jaxws.TaskOperationsImpl; import org.apache.hise.lang.xsd.htda.TTask; import org.apache.hise.lang.xsd.htdt.SuspendUntil; import org.apache.hise.utils.XQueryEvaluator; import org.junit.Test; import org.junit.Ignore; public class TaskOperationsTest { @Ignore public void testGetMyTasks() throws Exception { TaskOperationsImpl ti = new MockTaskOperationsImpl(); HISEEngineImpl he = new HISEEngineImpl(); he.setHiseUserDetails(new HISEUserDetails() { public String getUserPassword(String user) { return null; } public Collection<String> getUserGroups(String user) { return Collections.singleton("group1"); } }); MockHiseDao dao = new MockHiseDao(); he.setHiseDao(dao); ti.setHiseEngine(he); List<TTask> r = ti.getMyTasks("ALL", "ACTUALOWNER", "", Collections.EMPTY_LIST, "", "", 100); System.out.println(r.toString()); JAXBContext c = JAXBContext.newInstance("org.apache.hise.lang.xsd.htda"); Marshaller m = c.createMarshaller(); m.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE ); m.marshal(new JAXBElement(QName.valueOf("{http://www.example.org/WS-HT/api/xsd}taskAbstract"), TTask.class, r.get(0)), System.out); } @Test public void testSuspendUntil() throws Exception { JAXBContext c = JAXBContext.newInstance("org.apache.hise.lang.xsd.htdt"); Unmarshaller m = c.createUnmarshaller(); m.setSchema(SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema").newSchema(getClass().getResource("/ws-humantask-api-wsdl.xsd"))); SuspendUntil e = (SuspendUntil) m.unmarshal(getClass().getResourceAsStream("/suspendUntil.xml")); XQueryEvaluator ev = new XQueryEvaluator(); Date d = (Date) ev.evaluateExpression("declare namespace xsd='http://www.w3.org/2001/XMLSchema'; xsd:dateTime('2009-01-01T12:59:34')", null).get(0); System.out.println(d); e.getTime().getTimePeriod().addTo(d); Date d2 = (Date) ev.evaluateExpression("declare namespace xsd='http://www.w3.org/2001/XMLSchema'; xsd:dateTime('2009-01-04T12:59:34')", null).get(0); System.out.println(d2); Assert.assertEquals(d2, d); System.out.println(d); } }