blob: 16352e065da7ed0d442be0c6f896d5bb188c84be [file] [log] [blame]
// Copyright 2004 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package org.apache.tapestry.junit.utils;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import org.apache.tapestry.junit.TapestryTestCase;
import org.apache.tapestry.spec.AssetType;
import org.apache.tapestry.spec.Direction;
/**
* Tests the ability of an {@link org.apache.tapestry.util.Enum}
* to be serialized and deserialized properly.
*
* @author Howard Lewis Ship
* @version $Id$
*
**/
public class TestEnum extends TapestryTestCase
{
public void testSerialization() throws Exception
{
AssetType start = AssetType.EXTERNAL;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(start);
oos.close();
ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray());
ObjectInputStream ois = new ObjectInputStream(bis);
AssetType result = (AssetType) ois.readObject();
assertEquals(start, result);
assertSame(start, result);
}
public void testToString()
{
assertEquals("AssetType[EXTERNAL]", AssetType.EXTERNAL.toString());
assertEquals("Direction[CUSTOM]", Direction.CUSTOM.toString());
}
}