diff options
author | Geoff Berry <gcb@gnu.org> | 1998-07-24 20:03:36 +0000 |
---|---|---|
committer | Geoff Berry <gcb@gnu.org> | 1998-07-24 20:03:36 +0000 |
commit | b14a69f59ded2b371a5eae6adb628b5fcc285979 (patch) | |
tree | 62b6df5f176bf7806e55f04b8b9d0a0ade9e43dd /test/java.io/ObjectInputStreamTest.java | |
parent | 639a3890564211fdf5d2f42247176aac2c9a8f80 (diff) | |
download | classpath-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.java | 65 |
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" ); + } + +} |