[jboss-svn-commits] JBL Code SVN: r31578 - labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Feb 11 13:43:58 EST 2010


Author: baunax
Date: 2010-02-11 13:43:58 -0500 (Thu, 11 Feb 2010)
New Revision: 31578

Modified:
   labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java
Log:
fixed testInsertElements 

Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java	2010-02-11 18:43:06 UTC (rev 31577)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java	2010-02-11 18:43:58 UTC (rev 31578)
@@ -18,6 +18,7 @@
 import org.drools.command.runtime.BatchExecutionCommand;
 import org.drools.command.runtime.process.StartProcessCommand;
 import org.drools.command.runtime.rule.FireAllRulesCommand;
+import org.drools.command.runtime.rule.InsertElementsCommand;
 import org.drools.command.runtime.rule.GetObjectCommand;
 import org.drools.command.runtime.rule.InsertObjectCommand;
 import org.drools.common.DisconnectedFactHandle;
@@ -178,47 +179,36 @@
 
 	public void testInsertElements() throws Exception {
 		
-		String cmd = "";
-		cmd += "<batch-execution lookup='ksession1'>\n";
-		cmd += "   <insert-elements outIdentifier='elements'>\n";
-		cmd += "      <Person xmlns='http://drools.org/model' >\n";
-		cmd += "         <name>lucaz</name>\n";
-		cmd += "         <age>25</age>\n";
-		cmd += "      </Person>\n";
-		cmd += "      <Person xmlns='http://drools.org/model' >\n";
-		cmd += "         <name>unknow</name>\n";
-		cmd += "         <age>30</age>\n";
-		cmd += "      </Person>\n";
-		cmd += "   </insert-elements>\n";
-		cmd += "   <fire-all-rules />\n";
-		cmd += "</batch-execution>\n";
-
-		String outXml = new String((byte[])template.requestBodyAndHeader("direct:test-with-session", cmd, "jaxb-context", jaxbContext));
-
-		System.out.println(outXml);
-
-		assertNotNull(outXml);
+		BatchExecutionCommand cmd = new BatchExecutionCommand();
+		cmd.setLookup("ksession1");
+		InsertElementsCommand elems = new InsertElementsCommand("elems");
+		elems.getObjects().add(new Person("lucaz", 25));
+		elems.getObjects().add(new Person("hadrian", 25));
+		elems.getObjects().add(new Person("baunax", 21));
 		
-		String expectedXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
-		expectedXML += "<execution-results xmlns:ns2=\"http://drools.org/model\">\n";
-		expectedXML += "<result identifier=\"elements\">\n";
-		expectedXML += "<ns2:Person>\n";
-		expectedXML += "<ns2:name>lucaz</ns2:name>\n";
-		expectedXML += "<ns2:age>25</ns2:age>\n";
-		expectedXML += "</ns2:Person>\n";
-		expectedXML += "<ns2:Person>\n";
-		expectedXML += "<ns2:name>unknow</ns2:name>\n";
-		expectedXML += "<ns2:age>30</ns2:age>\n";
-		expectedXML += "</ns2:Person>\n";
-		expectedXML += "</result>\n";
-		expectedXML += "<result identifier=\"elements\">\n";
-		expectedXML += "<fact-handle external-form=\"0:2:2857023:2857023:2\"/>\n";
-		expectedXML += "<fact-handle external-form=\"0:3:11255694:11255694:3\"/>\n";
-		expectedXML += "</result>\n";
-		expectedXML += "</execution-results>\n";
+		cmd.getCommands().add(elems);
+		cmd.getCommands().add(new FireAllRulesCommand());
 		
-//		assertEquals(expectedXML, outXml);
+		StringWriter xmlReq = new StringWriter();
+		Marshaller marshaller = jaxbContext.createMarshaller();
+		marshaller.setProperty("jaxb.formatted.output", true);
+		marshaller.marshal(cmd, xmlReq);
+		
+		System.out.println(xmlReq.toString());
+		
+		byte[] xmlResp = (byte[]) template.requestBodyAndHeader("direct:test-with-session", xmlReq.toString(), "jaxb-context", jaxbContext);
+		assertNotNull(xmlResp);
+		System.out.println(new String(xmlResp));
 
+		ExecutionResults resp = (ExecutionResults) jaxbContext.createUnmarshaller().unmarshal(new ByteArrayInputStream(xmlResp));
+		assertNotNull(resp);
+		
+		assertEquals(1, resp.getIdentifiers().size());
+		List<Person> list = (List<Person>) resp.getValue("elems");
+		assertEquals("lucaz", list.get(0).getName());
+		assertEquals("hadrian", list.get(1).getName());
+		assertEquals("baunax", list.get(2).getName());
+		
 	}
 	
 	public void testQuery() throws Exception {



More information about the jboss-svn-commits mailing list