You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2006/11/03 20:41:21 UTC

svn commit: r470967 - /tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/util/Base64Tests.java

Author: hlship
Date: Fri Nov  3 11:41:21 2006
New Revision: 470967

URL: http://svn.apache.org/viewvc?view=rev&rev=470967
Log:
Add utilities to converting to and from Base64

Added:
    tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/util/Base64Tests.java

Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/util/Base64Tests.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/util/Base64Tests.java?view=auto&rev=470967
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/util/Base64Tests.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/util/Base64Tests.java Fri Nov  3 11:41:21 2006
@@ -0,0 +1,69 @@
+package org.apache.tapestry.internal.util;
+
+import static org.apache.tapestry.util.CollectionFactory.newMap;
+
+import java.io.InputStream;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.util.Map;
+
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+/**
+ * Tests for {@link Base64InputStream} and {@link Base64OutputStream}, etc.
+ */
+public class Base64Tests extends Assert
+{
+    @SuppressWarnings("unchecked")
+    @Test
+    public void round_trip_is_equal() throws Exception
+    {
+        Map input = newMap();
+
+        input.put("fred", "flintstone");
+        input.put("barney", "rubble");
+
+        Base64OutputStream bos = new Base64OutputStream();
+        ObjectOutputStream oos = new ObjectOutputStream(bos);
+
+        oos.writeObject(input);
+
+        oos.close();
+
+        String base64 = bos.toBase64();
+
+        InputStream is = new Base64InputStream(base64);
+        ObjectInputStream ois = new ObjectInputStream(is);
+
+        Map output = (Map) ois.readObject();
+
+        assertEquals(output, input);
+        assertNotSame(output, input);
+    }
+
+    @Test
+    @SuppressWarnings("unchecked")
+    public void round_trip_is_equal_via_object_wrappers() throws Exception
+    {
+        Map input = newMap();
+
+        input.put("fred", "flintstone");
+        input.put("barney", "rubble");
+
+        Base64ObjectOutputStream os = new Base64ObjectOutputStream();
+
+        os.writeObject(input);
+
+        os.close();
+
+        String base64 = os.toBase64();
+
+        ObjectInputStream ois = new Base64ObjectInputStream(base64);
+
+        Map output = (Map) ois.readObject();
+
+        assertEquals(output, input);
+        assertNotSame(output, input);
+    }
+}