01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package org.apache.commons.io.input;
18:
19: import java.io.ByteArrayInputStream;
20: import java.io.ByteArrayOutputStream;
21: import java.io.InputStream;
22: import java.io.ObjectOutputStream;
23:
24: import junit.framework.TestCase;
25:
26: /**
27: * Tests the CountingInputStream.
28: *
29: * @version $Id: CountingInputStreamTest.java 160202 2005-04-05 17:22:21Z roxspring $
30: */
31: public class ClassLoaderObjectInputStreamTest extends TestCase {
32:
33: public ClassLoaderObjectInputStreamTest(String name) {
34: super (name);
35: }
36:
37: /* Note: This test case tests the simplest functionality of
38: * ObjectInputStream. IF we really wanted to test ClassLoaderObjectInputStream
39: * we would probably need to create a transient Class Loader. -TO
40: */
41:
42: public void testExpected() throws Exception {
43:
44: ByteArrayOutputStream baos = new ByteArrayOutputStream();
45: ObjectOutputStream oos = new ObjectOutputStream(baos);
46:
47: oos.writeObject(Boolean.FALSE);
48:
49: InputStream bais = new ByteArrayInputStream(baos.toByteArray());
50: ClassLoaderObjectInputStream clois = new ClassLoaderObjectInputStream(
51: getClass().getClassLoader(), bais);
52: Boolean result = (Boolean) clois.readObject();
53:
54: assertTrue(!result.booleanValue());
55: }
56:
57: }
|