junit.extensions.awt.script
Class Assert

java.lang.Object
  |
  +--junit.extensions.awt.script.Step
        |
        +--junit.extensions.awt.script.MethodInvocation
              |
              +--junit.extensions.awt.script.Assert
All Implemented Interfaces:
Tags, XMLifiable

public class Assert
extends MethodInvocation

Encapsulate an assertion. These come in two flavors, property assertions and assertions provided by a ComponentTester. The property assertions must specify a component id, property name and value. The ComponentTester must specify a method name and optionally the class of the component on which the ComponentTester will operate (the base ComponentTester class is used if no class is specified.


Field Summary
static int DEFAULT_INTERVAL
           
static int DEFAULT_TIMEOUT
           
 
Fields inherited from class junit.extensions.awt.script.Step
listeners, parser, STEP_END, STEP_ERROR, STEP_FAILURE, STEP_PROGRESS, STEP_START
 
Fields inherited from interface junit.extensions.awt.script.Tags
TAG_ACTION, TAG_ARGS, TAG_ASSERT, TAG_AWTTESTSCRIPT, TAG_CLASS, TAG_COMPONENT, TAG_COUNT, TAG_DESC, TAG_EVENT, TAG_FILENAME, TAG_ID, TAG_INVERT, TAG_INVOKER, TAG_KEYCHAR, TAG_KEYCODE, TAG_KIND, TAG_LAUNCH, TAG_METHOD, TAG_MODIFIERS, TAG_NAME, TAG_PARENT, TAG_POLL_INTERVAL, TAG_SCRIPT, TAG_SEQUENCE, TAG_STOP_ON_ERROR, TAG_STOP_ON_FAILURE, TAG_TAG, TAG_TERMINATE, TAG_THREADED, TAG_TIMEOUT, TAG_TITLE, TAG_TRIGGER, TAG_TYPE, TAG_VALUE, TAG_WAIT, TAG_WINDOW, TAG_X, TAG_Y
 
Constructor Summary
Assert(Resolver resolver, ComponentFinder finder, java.util.HashMap attributes, boolean wait)
          Construct an assert step from XML.
Assert(Resolver resolver, ComponentFinder finder, java.lang.String desc, java.lang.String methodName, java.lang.String[] args, java.lang.Class testedClass, java.lang.String expectedResult, boolean invert, boolean wait)
          Assertion provided by a ComponentTester subclass.
Assert(Resolver resolver, ComponentFinder finder, java.lang.String desc, java.lang.String methodName, java.lang.String[] args, java.lang.Class testedClass, java.lang.String expectedResult, boolean invert, long timeout, long interval)
          Wait provided by a ComponentTester subclass.
Assert(Resolver resolver, ComponentFinder finder, java.lang.String desc, java.lang.String methodName, java.lang.String[] args, java.lang.String expectedResult, boolean invert, boolean wait)
          Assertion provided by the ComponentTester class.
Assert(Resolver resolver, ComponentFinder finder, java.lang.String desc, java.lang.String methodName, java.lang.String[] args, java.lang.String expectedResult, boolean invert, long timeout, long interval)
          Wait provided by the ComponentTester class.
Assert(Resolver resolver, ComponentFinder finder, java.lang.String desc, java.lang.String propertyName, java.lang.String[] args, java.lang.String componentID, java.lang.String expectedResult, boolean invert, boolean wait)
          Property assertion on Component subclass.
Assert(Resolver resolver, ComponentFinder finder, java.lang.String desc, java.lang.String propertyName, java.lang.String[] args, java.lang.String componentID, java.lang.String expectedResult, boolean invert, long timeout, long interval)
          Wait on a Component's property.
 
Method Summary
protected  void doCheck()
          Check the assertion.
protected  java.lang.String getAttributes()
          The invert "tag" is encoded in the method name.
protected  java.lang.String getDefaultDescription()
          Return a reasonable default description for this script step.
protected  java.lang.String getMethodName()
          Method name to save in script.
protected  java.lang.String getUsage()
          Provide a usage String for this step.
protected  java.lang.String getXMLTag()
          Define the XML tag to use for this script step.
protected  java.lang.reflect.Method resolveMethod()
          Resolve the method name to an actual method.
protected  ComponentTester resolveTester()
          Get the component tester appropriate for this step.
protected  void runStep()
          Run this step.
protected  java.lang.String toString(java.lang.Object obj)
          Print out arrays by individual element.
 
Methods inherited from class junit.extensions.awt.script.MethodInvocation
getArgList, getArgs, getMethod, getThreadedDefault, isThreaded, launch, resolveMethod
 
Methods inherited from class junit.extensions.awt.script.Step
addStepListener, clearFailures, createAttributeMap, createStep, createStep, fireStepEnd, fireStepError, fireStepEvent, fireStepEvent, fireStepEvent, fireStepFailure, fireStepProgress, fireStepStart, getContents, getDescription, getError, getFailure, getFinder, getResolver, getStopOnError, getStopOnFailure, getTester, parseAttributes, removeStepListener, resolve, run, setDescription, setError, setFailure, setStopOnError, setStopOnFailure, simpleClassName, toString, toXML, usage, usage
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT_INTERVAL

public static final int DEFAULT_INTERVAL

DEFAULT_TIMEOUT

public static final int DEFAULT_TIMEOUT
Constructor Detail

Assert

public Assert(Resolver resolver,
              ComponentFinder finder,
              java.util.HashMap attributes,
              boolean wait)
       throws InvalidScriptException
Construct an assert step from XML.

Assert

public Assert(Resolver resolver,
              ComponentFinder finder,
              java.lang.String desc,
              java.lang.String methodName,
              java.lang.String[] args,
              java.lang.String expectedResult,
              boolean invert,
              boolean wait)
Assertion provided by the ComponentTester class.

Assert

public Assert(Resolver resolver,
              ComponentFinder finder,
              java.lang.String desc,
              java.lang.String methodName,
              java.lang.String[] args,
              java.lang.Class testedClass,
              java.lang.String expectedResult,
              boolean invert,
              boolean wait)
Assertion provided by a ComponentTester subclass.

Assert

public Assert(Resolver resolver,
              ComponentFinder finder,
              java.lang.String desc,
              java.lang.String propertyName,
              java.lang.String[] args,
              java.lang.String componentID,
              java.lang.String expectedResult,
              boolean invert,
              boolean wait)
Property assertion on Component subclass.

Assert

public Assert(Resolver resolver,
              ComponentFinder finder,
              java.lang.String desc,
              java.lang.String methodName,
              java.lang.String[] args,
              java.lang.String expectedResult,
              boolean invert,
              long timeout,
              long interval)
Wait provided by the ComponentTester class.

Assert

public Assert(Resolver resolver,
              ComponentFinder finder,
              java.lang.String desc,
              java.lang.String methodName,
              java.lang.String[] args,
              java.lang.Class testedClass,
              java.lang.String expectedResult,
              boolean invert,
              long timeout,
              long interval)
Wait provided by a ComponentTester subclass.

Assert

public Assert(Resolver resolver,
              ComponentFinder finder,
              java.lang.String desc,
              java.lang.String propertyName,
              java.lang.String[] args,
              java.lang.String componentID,
              java.lang.String expectedResult,
              boolean invert,
              long timeout,
              long interval)
Wait on a Component's property.
Method Detail

getXMLTag

protected java.lang.String getXMLTag()
Description copied from class: Step
Define the XML tag to use for this script step.
Overrides:
getXMLTag in class Step

getUsage

protected java.lang.String getUsage()
Description copied from class: Step
Provide a usage String for this step.
Overrides:
getUsage in class Step

getDefaultDescription

protected java.lang.String getDefaultDescription()
Description copied from class: Step
Return a reasonable default description for this script step. This value is used in the absence of an explicit description.
Overrides:
getDefaultDescription in class Step

getMethodName

protected java.lang.String getMethodName()
Method name to save in script. We encode the "invert" flag into the method name for readability.
Overrides:
getMethodName in class MethodInvocation

getAttributes

protected java.lang.String getAttributes()
The invert "tag" is encoded in the method name.
Overrides:
getAttributes in class MethodInvocation

doCheck

protected void doCheck()
                throws java.lang.Throwable
Check the assertion. This is exported so that it can be used by derivatives of Assert (e.g. Wait). FIXME allow regular expressions

toString

protected java.lang.String toString(java.lang.Object obj)
Print out arrays by individual element.

runStep

protected void runStep()
                throws java.lang.Throwable
Run this step.
Overrides:
runStep in class MethodInvocation

resolveTester

protected ComponentTester resolveTester()
Get the component tester appropriate for this step.
Overrides:
resolveTester in class Step

resolveMethod

protected java.lang.reflect.Method resolveMethod()
Resolve the method name to an actual method. There are three possibilities:
  1. is/getXXX() on the component itself
  2. assertXXX(Component,...) on a subclass of ComponentTester
  3. assertXXX(...) on ComponentTester
Overrides:
resolveMethod in class MethodInvocation