dlr 2005/05/10 11:42:30
Modified: src/test/org/apache/xmlrpc XmlWriterTest.java Log: * src/test/org/apache/xmlrpc/XmlWriterTest.java (testWriter): Added test of array and hashtable writing capabilities. Target release: 2.0 Revision Changes Path 1.8 +25 -3 ws-xmlrpc/src/test/org/apache/xmlrpc/XmlWriterTest.java Index: XmlWriterTest.java =================================================================== RCS file: /home/cvs/ws-xmlrpc/src/test/org/apache/xmlrpc/XmlWriterTest.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -u -r1.7 -r1.8 --- XmlWriterTest.java 26 Apr 2005 10:08:52 -0000 1.7 +++ XmlWriterTest.java 10 May 2005 18:42:30 -0000 1.8 @@ -18,6 +18,7 @@ package org.apache.xmlrpc; import java.io.ByteArrayOutputStream; +import java.util.Hashtable; import junit.framework.Test; import junit.framework.TestCase; @@ -72,16 +73,37 @@ ByteArrayOutputStream buffer = new ByteArrayOutputStream(); XmlWriter writer = new XmlWriter(buffer, XmlWriter.ISO8859_1); assertTrue(writer.getEncoding().equals(XmlRpc.encoding)); + String foobar = "foobar"; writer.writeObject(foobar); writer.flush(); //System.err.println("buffer=" + new String(buffer.toByteArray())); String postProlog = "<value>" + foobar + "</value>"; assertTrue(buffer.toString().endsWith(postProlog)); - int thirtySeven = 37; - writer.writeObject(new Integer(37)); + + Integer thirtySeven = new Integer(37);; + writer.writeObject(thirtySeven); + writer.flush(); + postProlog += "<value><int>" + thirtySeven + "</int></value>"; + assertTrue(buffer.toString().endsWith(postProlog)); + + Object[] array = { foobar, thirtySeven }; + writer.writeObject(array); + writer.flush(); + postProlog += "<array><data>"; + postProlog += "<value>" + foobar + "</value>"; + postProlog += "<value><int>" + thirtySeven + "</int></value>"; + postProlog += "</data></array>"; + assertTrue(buffer.toString().endsWith(postProlog)); + + Hashtable map = new Hashtable(); + map.put(foobar, thirtySeven); + writer.writeObject(map); writer.flush(); + postProlog += "<struct><member>"; + postProlog += "<name>" + foobar + "</name>"; postProlog += "<value><int>" + thirtySeven + "</int></value>"; + postProlog += "</member></struct>"; assertTrue(buffer.toString().endsWith(postProlog)); } catch (Exception e)