Class TestUtil
- java.lang.Object
-
- com.gargoylesoftware.base.testing.TestUtil
-
public class TestUtil extends java.lang.Object
Utility methods dealing with JUnit testing.- Version:
- $Revision: 1.6 $
-
-
Constructor Summary
Constructors Modifier Constructor Description private
TestUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
appearsEqual(java.lang.Object a, java.lang.Object b)
Return true if the two objects appear to be equal.static void
assertAppearsEqual(java.lang.String message, java.lang.Object a, java.lang.Object b)
Assert that a and b appear equal.static void
assertAppearsNotEqual(java.lang.String message, java.lang.Object a, java.lang.Object b)
Assert that a and b do not appear equal.static void
assertNotNull(java.lang.String fieldName, java.lang.Object fieldValue)
Verify that the specified value is not null.private static void
checkEquality(java.lang.Object original, java.lang.Object copy)
Assert that the two objects are equalstatic java.lang.Object
copyBySerialization(java.lang.Object object)
Copy an object by serializing it into a buffer and then deserializing it again.private static boolean
isEqual(java.lang.Object a, java.lang.Object b)
static void
testClone(java.lang.Object object, boolean checkEquality)
The the clone() method on an object.static java.lang.Object
testSerialization(java.lang.Object object)
Same as testSerialization(object, true).static java.lang.Object
testSerialization(java.lang.Object object, boolean checkEquality)
Serialize the specified object to a stream and then deserialize it again.
-
-
-
Method Detail
-
testSerialization
public static java.lang.Object testSerialization(java.lang.Object object, boolean checkEquality) throws java.io.IOException
Serialize the specified object to a stream and then deserialize it again. This tests the following things:- Ensures that the original and reconstructed objects are equal.
- The object can be serialized
- Parameters:
object
- The object to testcheckEquality
- True if the original and copy should be equal according to the semantics of the equals() method.- Returns:
- The copy.
- Throws:
java.io.IOException
- If an error occcurs during serialization.
-
testSerialization
public static java.lang.Object testSerialization(java.lang.Object object) throws java.io.IOException
Same as testSerialization(object, true). Provided as a convenience as the equality check is usually wanted.- Parameters:
object
- The object to test- Returns:
- The copy.
- Throws:
java.io.IOException
- If an error occcurs during serialization.
-
copyBySerialization
public static java.lang.Object copyBySerialization(java.lang.Object object) throws java.io.IOException
Copy an object by serializing it into a buffer and then deserializing it again.- Parameters:
object
- The original.- Returns:
- The copy.
- Throws:
java.io.IOException
- If an error occcurs during serialization.
-
testClone
public static void testClone(java.lang.Object object, boolean checkEquality) throws java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException
The the clone() method on an object.- Parameters:
object
- The original object to clone.checkEquality
- True if the original and copy are to be compared for equality after the clone().- Throws:
java.lang.IllegalAccessException
- If we do not have authority to call the clone() method.java.lang.reflect.InvocationTargetException
- If an exception is thrown during the processing of the clone() method
-
checkEquality
private static void checkEquality(java.lang.Object original, java.lang.Object copy)
Assert that the two objects are equal- Parameters:
original
- The original objectcopy
- The object to compare against
-
assertAppearsEqual
public static void assertAppearsEqual(java.lang.String message, java.lang.Object a, java.lang.Object b)
Assert that a and b appear equal. SeeappearsEqual(Object,Object)
for an explanation of "appears"- Parameters:
message
- The message to display if the assert fails.a
- The first object to compareb
- The second object to compare
-
assertAppearsNotEqual
public static void assertAppearsNotEqual(java.lang.String message, java.lang.Object a, java.lang.Object b)
Assert that a and b do not appear equal. SeeappearsEqual(Object,Object)
for an explanation of "appears"- Parameters:
message
- The message to display if the assert fails.a
- The first object to compareb
- The second object to compare
-
appearsEqual
public static boolean appearsEqual(java.lang.Object a, java.lang.Object b)
Return true if the two objects appear to be equal. Some objects cannot be compared for equality because they don't implement either the equals method or the Comparable interface. An example would be the Event objects used by AWT and Swing.This method will attempt to determine if the two objects are equal by calling all the public accessor methods on the objects and performing equals checks on the results.
If an exception is thrown during the invocation of any of the getXX() methods then that method will be ignored for the purpose of considering equality.
- Parameters:
a
- The first object to be comparedb
- The second object to be compared- Returns:
- True if the two objects appear to be the same.
-
isEqual
private static boolean isEqual(java.lang.Object a, java.lang.Object b)
-
assertNotNull
public static final void assertNotNull(java.lang.String fieldName, java.lang.Object fieldValue) throws DetailedNullPointerException
Verify that the specified value is not null. If it is then throw an exception- Parameters:
fieldName
- The name of the field to checkfieldValue
- The value of the field to check- Throws:
DetailedNullPointerException
- If fieldValue is null
-
-