class TestWithCustomTest
extends junit.framework.TestCase
Each user-provided test is allowed to return a Boolean, either a primitive or a java.lang.Boolean -- it does not matter. If the user-provided test returns a Boolean and it is false, then the test is considered to have failed. If the user-provided test throws or returns a Throwable, it is considered to have failed. If the user-provided test returns anything else (including void) then the test is considered to have passed.
Note: Returning Throwable is a little bit cleaner than throwing an Exception, but either is acceptable as a sign of test failure. This is because when a Throwable is returned, if -printStack is in effect, then the CORRECT stack trace can be displayed and not a stack dump from the refective invocation.
There is no requirement that the user-provided test implement any interface, nor any requirement that the user-provided test return anything at all. However, a test that returns "void" and that never throws an Exception is not a very useful test as it can never fail.
Modifier and Type | Field and Description |
---|---|
protected FailureType |
_failure
The failure object that is not null is the test intends to fail.
|
protected boolean |
_failureExpected
True if the test is supposed to return failure or throw an Exception.
|
Constructor and Description |
---|
TestWithCustomTest(java.lang.String name)
Blank constructor for this test case.
|
TestWithCustomTest(java.lang.String name,
XMLTestCase tc)
Constructs a test case that when invoked will delegate to the provided
test case.
|
Modifier and Type | Method and Description |
---|---|
protected java.lang.Object |
getTestObject(java.lang.String testClassName)
Gets an instance of our test object, as configured.
|
void |
runTest()
Runs our test case using our delegate object where necessary.
|
protected void |
setUp()
Provides setup for our delegated test case, depending on the type of
test case we are delegating for.
|
protected void |
tearDown()
Provides tear down for our delegated test case, depending on the type of
test case we are delegating for.
|
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, countTestCases, createResult, fail, fail, failNotEquals, failNotSame, failSame, format, getName, run, run, runBare, setName, toString
protected final FailureType _failure
protected final boolean _failureExpected
TestWithCustomTest(java.lang.String name)
name
- Name of our delegate test caseTestWithCustomTest(java.lang.String name, XMLTestCase tc)
name
- Name of our delegate test casetc
- protected void setUp() throws java.lang.Exception
setUp
in class junit.framework.TestCase
java.lang.Exception
- if anything goes wrong during setupprotected void tearDown() throws java.lang.Exception
tearDown
in class junit.framework.TestCase
java.lang.Exception
- if anything goes wrong during teardownpublic void runTest()
runTest
in class junit.framework.TestCase
java.lang.Exception
- when anything goes wrong (this is temporary)protected java.lang.Object getTestObject(java.lang.String testClassName) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException
testClassName
- name of the test classjava.lang.ClassNotFoundException
- when the test object's class cannot be foundjava.lang.IllegalAccessException
- when the test object's constructor is private or protectedjava.lang.InstantiationException
- when the test object is abstract or an interfaceIntalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com