01: package com.bostechcorp.cbesb.runtime.parser;
02:
03: import java.io.File;
04: import java.io.FileInputStream;
05: import java.io.FileOutputStream;
06: import java.io.InputStream;
07:
08: import javax.xml.transform.OutputKeys;
09: import javax.xml.transform.Transformer;
10: import javax.xml.transform.TransformerException;
11: import javax.xml.transform.TransformerFactory;
12: import javax.xml.transform.dom.DOMSource;
13: import javax.xml.transform.stream.StreamResult;
14:
15: import junit.framework.TestCase;
16:
17: import org.w3c.dom.Document;
18:
19: import com.bostechcorp.cbesb.common.mdl.IMDLDocument;
20: import com.bostechcorp.cbesb.common.mdl.IMessageDefinition;
21: import com.bostechcorp.cbesb.common.mdl.util.FormatDefUtil;
22: import com.bostechcorp.cbesb.runtime.parser.impl.LegacyDataParser;
23: import com.bostechcorp.cbesb.runtime.parser.impl.LegacyDataSerializer;
24:
25: public class TestMixed extends TestCase {
26: public void testMixed() throws Throwable {
27: File mdlFile = new File("target/test-data/in/mixed1.mdl");
28: File dataFile = new File("target/test-data/in/mixed1.dat");
29: File outputFile = new File("target/test-data/out/mixed1.txt");
30:
31: IMDLDocument mdlDoc = FormatDefUtil.getMdlDocFromPath(mdlFile
32: .getAbsolutePath());
33:
34: IMessageDefinition msgDef = mdlDoc.getMessageDefinition(mdlDoc
35: .getTargetNamespace(), mdlDoc
36: .getAllMessageDefinitions()[0].getName());
37:
38: Document domDoc = null;
39: LegacyDataParser parser = new LegacyDataParser();
40: try {
41: InputStream is = new FileInputStream(dataFile);
42: domDoc = parser.parse(is, msgDef);
43: } catch (Exception pe) {
44: System.err.println("Error Parsing:");
45: System.err.println(pe.getMessage());
46: System.exit(0);
47: }
48:
49: try {
50: TransformerFactory tFactory = TransformerFactory
51: .newInstance();
52: Transformer transformer = tFactory.newTransformer();
53: transformer.setOutputProperty(OutputKeys.INDENT, "yes");
54: transformer.setOutputProperty(OutputKeys.METHOD, "xml");
55: DOMSource source = new DOMSource(domDoc);
56: StreamResult result = new StreamResult(System.out);
57: transformer.transform(source, result);
58: } catch (TransformerException te) {
59: System.err.println("Error Writing Output");
60: System.err.println(te.getMessage());
61: System.exit(0);
62: }
63:
64: try {
65: LegacyDataSerializer serializer = new LegacyDataSerializer();
66: FileOutputStream fio = new FileOutputStream(outputFile);
67: serializer.serialize(domDoc, msgDef, System.out);
68: serializer.serialize(domDoc, msgDef, fio);
69: //String rsuleString=FileUtil.readStringFromFile("target/test-data/out/mixed1.txt");
70: //String beginString=FileUtil.readStringFromFile("target/test-data/in/mixed1.dat");
71: //assertTrue(rsuleString.equals(beginString));
72: } catch (Exception e) {
73: System.err.println("Error Serializer:");
74: System.err.println(e.getMessage());
75: System.exit(0);
76: }
77: }
78: }
|