summaryrefslogtreecommitdiff
path: root/test/java.io/ObjectInputStreamTest.java
diff options
context:
space:
mode:
authorGeoff Berry <gcb@gnu.org>1998-07-24 20:03:36 +0000
committerGeoff Berry <gcb@gnu.org>1998-07-24 20:03:36 +0000
commitb14a69f59ded2b371a5eae6adb628b5fcc285979 (patch)
tree62b6df5f176bf7806e55f04b8b9d0a0ade9e43dd /test/java.io/ObjectInputStreamTest.java
parent639a3890564211fdf5d2f42247176aac2c9a8f80 (diff)
downloadclasspath-b14a69f59ded2b371a5eae6adb628b5fcc285979.tar.gz
Updated data files to correspond to new test classes. Moved test
classes out of ObjectOutputStreamTest. Added ObjectInputStreamTest.
Diffstat (limited to 'test/java.io/ObjectInputStreamTest.java')
-rw-r--r--test/java.io/ObjectInputStreamTest.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/test/java.io/ObjectInputStreamTest.java b/test/java.io/ObjectInputStreamTest.java
new file mode 100644
index 000000000..7736ceb16
--- /dev/null
+++ b/test/java.io/ObjectInputStreamTest.java
@@ -0,0 +1,65 @@
+/*************************************************************************
+/* ObjectInputStreamTest.java -- Tests ObjectInputStream class
+/*
+/* Copyright (c) 1998 by Geoffrey C. Berry (gcb@cs.duke.edu)
+/*
+/* This program is free software; you can redistribute it and/or modify
+/* it under the terms of the GNU General Public License as published
+/* by the Free Software Foundation, version 2. (see COPYING)
+/*
+/* This program is distributed in the hope that it will be useful, but
+/* WITHOUT ANY WARRANTY; without even the implied warranty of
+/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+/* GNU General Public License for more details.
+/*
+/* You should have received a copy of the GNU General Public License
+/* along with this program; if not, write to the Free Software Foundation
+/* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA
+/*************************************************************************/
+
+import java.io.FileInputStream;
+import java.io.ObjectInputStream;
+
+public class ObjectInputStreamTest extends Test
+{
+ public static void testSerial( Object obj, String filename )
+ {
+ try
+ {
+ ObjectInputStream ois =
+ new ObjectInputStream( new FileInputStream( filename ) );
+
+ Object read_object = ois.readObject();
+ ois.close();
+
+ if( read_object.equals( obj ) )
+ pass();
+ else
+ fail();
+ }
+ catch( Exception e )
+ {
+ e.printStackTrace();
+ fail();
+ }
+ }
+
+
+ public static void main( String[] args )
+ {
+ testSerial( new OOSCallDefault( 1, 3.14, "test" ),
+ "calldefault.data" );
+ System.out.println( "Object calling defaultWriteObject()" );
+
+ testSerial( new OOSNoCallDefault( 17, "no\ndefault", false ),
+ "nocalldefault.data" );
+ System.out.println( "Object not calling defaultWriteObject()" );
+
+ testSerial( new OOSExtern( -1, "", true ), "external.data" );
+ System.out.println( "Externalizable class" );
+
+ testSerial( new HairyGraph(), "graph.data" );
+ System.out.println( "Graph of objects with circular references" );
+ }
+
+}