public class DescribedObject extends ProxyTestObject
BROWSERTABTESTOBJECT_CLASSNAME, BROWSERTESTOBJECT_CLASSNAME, COLORDIALOGTESTOBJECT_CLASSNAME, CROSSDOMAINCONTAINER_CLASSNAME, debug, DOCUMENTTESTOBJECT_CLASSNAME, DOMAINTESTOBJECT_CLASSNAME, ECLIPSETOPLEVELTESTOBJECT_CLASSNAME, EMBEDDEDBROWSERTESTOBJECT_CLASSNAME, FILEDIALOGTESTOBJECT_CLASSNAME, FRAMESUBITEMTESTOBJECT_CLASSNAME, FRAMETESTOBJECT_CLASSNAME, GEFEDITPARTTESTOBJECT_CLASSNAME, GUISUBITEMTESTOBJECT_CLASSNAME, GUITESTOBJECT_CLASSNAME, INTERNALFRAMETESTOBJECT_CLASSNAME, MESSAGEBOXTESTOBJECT_CLASSNAME, PALETTEGUISUBITEMTESTOBJECT_CLASSNAME, PROCESSTESTOBJECT_CLASSNAME, SCROLLSUBITEMTESTOBJECT_CLASSNAME, SCROLLTESTOBJECT_CLASSNAME, SELECTGUISUBITEMTESTOBJECT_CLASSNAME, SELECTSCROLLGUISUBITEMTESTOBJECT_CLASSNAME, SHELLTESTOBJECT_CLASSNAME, STATELESSGUISUBITEMTESTOBJECT_CLASSNAME, SUBITEMTESTOBJECT_CLASSNAME, TABITEMTESTOBJECT_CLASSNAME, TESTOBJECT_CLASSNAME, TEXTGUISUBITEMTESTOBJECT_CLASSNAME, TEXTGUITESTOBJECT_CLASSNAME, TEXTSCROLLTESTOBJECT_CLASSNAME, TEXTSELECTGUISUBITEMTESTOBJECT_CLASSNAME, TIMEOUTTESTOBJECT_CLASSNAME, TOGGLEGUITESTOBJECT_CLASSNAME, TOGGLETESTOBJECT_CLASSNAME, TOPLEVELSUBITEMTESTOBJECT_CLASSNAME, TOPLEVELTESTOBJECT_CLASSNAME, TRACKBARTESTOBJECT_CLASSNAME, vomClippedRectangle
INCLUDE_ALL, INCLUDE_JUSTOBJECT, INCLUDE_SIBLINGS
Constructor and Description |
---|
DescribedObject() |
DescribedObject(HashtableEx propertyMap,
java.lang.String testObjectClassName)
This constructor is used by the value manager to create an
instance from a persisted DescribedObjectReference
|
DescribedObject(SpyMap spyMap,
java.lang.String testObjectClassName) |
Modifier and Type | Method and Description |
---|---|
void |
addRecognitionProperty(java.lang.String property,
java.lang.Object value,
int weight)
Defines an additional recognition property that this proxy
can use.
|
ProxyTestObject[] |
getChildren()
Returns an array of proxies, visible by using the TestObject interface
from a script, for the children of this object.
|
java.lang.String |
getDescriptiveName()
Returns a name that can be used to describe the associated UI
object in a script.
|
java.lang.Object |
getIndexer(java.lang.String name,
java.lang.Object[] indexes)
Gets the value of an indexed property
|
IndexerInfo[] |
getIndexers()
Gets information about a
TestObject's indexed properties |
ProxyTestObject[] |
getMappableChildren()
Returns an array of proxies, visible by using the TestObject interface
from a script, for the children of this object.
|
ProxyTestObject |
getMappableParent()
Returns a proxy object for the mappable parent of this object;
returns
null if this object has no mappable parent. |
MethodInfo[] |
getMethods()
Returns an array containing method signatures for all methodsaccessiblee
against the associated test object.
|
MethodSpecification |
getMethodSpecForPoint(java.awt.Point pt)
Returns a
MethodSpecification for a method that returns a java.awt.Point
for the specified coordinates. |
java.util.Hashtable |
getNonValueProperties()
Returns the properties that are not supported because the value
is a reference to another object.
|
ProxyTestObject[] |
getOwnedObjects()
Returns an array of proxies for the objects owned
by this object.
|
ProxyTestObject |
getOwner()
Returns a proxy object for the owner of this object;
returns
null if this object has no owner. |
ProxyTestObject |
getParent()
Returns a proxy object for the parent of this object;
returns
null if this object has no parent. |
java.util.Hashtable |
getProperties()
Returns a complete set of properties for the associated
test object.
|
java.lang.Object |
getProperty(java.lang.String propertyName)
Gets the value for a specific property defined in
getProperties() or getRecognitionProperties() . |
HashtableEx |
getPropertyMap() |
java.util.Hashtable |
getRecognitionProperties()
Returns an enumeration of properties used to identify the
associated test object.
|
int |
getRecognitionPropertyWeight(java.lang.String propertyName)
Returns an indication of how useful this property is for recognition.
|
java.util.Hashtable |
getStandardProperties()
Returns a complete set of consistent properties for the associated
test object.
|
java.util.Hashtable |
getTestDataTypes()
Returns a hashtable of data type descriptions of the verification
point data available with the associated object.
|
TestDomainImplementation |
getTestDomain()
Returns the
TestDomain that this proxy object is associated
with. |
java.lang.String |
getTestObjectClassName()
Returns a valid class name specification.
|
ProxyTestObject |
getTopMappableParent()
Returns a proxy object for the top mappable parent of this object;
returns a pointer to itself if this object has no mappable parent.
|
ProxyTestObject |
getTopParent()
Returns a proxy object for the top parent of this object;
returns a pointer to itself if this object has no parent.
|
java.lang.String |
getUniqueId()
Returns a string for the associated object.
|
boolean |
hasAddedRecognitionProperties()
Returns
true if recognition properties have been added
to this proxy from an external source through addRecognitionProperty() . |
void |
processMouseEvent(IMouseActionInfo action)
Updates the supplied
action with an appropriate
MethodSpecification to play back the action. |
void |
setIndexer(java.lang.String name,
java.lang.Object[] indexes,
java.lang.Object val)
Sets the value of an indexed property
|
void |
setProperty(java.lang.String propertyName,
java.lang.Object value)
Sets the value for a specific property defined in
getProperties() or getRecognitionProperties() . |
boolean |
shouldBeMapped()
Determines whether the object is interesting from a persistent testability
sense and should therefore be added to the object map.
|
addDataDrivableCommands, baseClassMatch, canTakeVP, equals, findChildrenWithProperties, findChildrenWithPropertiesAndInvoke, getChannel, getChildren, getDataDrivableCommand, getDataDrivableCommands, getElementWithFocus, getField, getIgnorableProperties, getMappableChildren, getMappableParent, getObjectClassName, getObjectCustomClassName, getOwnedObjects, getParent, getProxy, getRole, getScriptCommandAnchor, getScriptCommandFlags, getTestData, getVisualClippableParent, getVisualClippedRectangle, getVisualMappableChildren, getVisualTopParent, getVOMSpecificProperty, hasSpecialFrameState, isClassIndexConsidered, isSameObject, isValidObject, ping, suppressKeyAction, updateTestData
public DescribedObject()
public DescribedObject(HashtableEx propertyMap, java.lang.String testObjectClassName)
public DescribedObject(SpyMap spyMap, java.lang.String testObjectClassName)
public java.lang.String getTestObjectClassName()
ProxyTestObject
TestObject
class. The testObject
performs a cross-process (and cross-JVM) call to the
same method against an associated proxy, which is this proxy.
This method should never return null
, even if shouldBeMapped()
returns false
. User may still access objects such as this through
scripting method calls and can return references to them.
If a null were returned, the marshalling code would be confused and would not
be able to construct a test object.
This method may be called from any thread.
getTestObjectClassName
in interface IProxyBase
getTestObjectClassName
in class ProxyTestObject
testObject
class full name.public TestDomainImplementation getTestDomain()
TestDomain
that this proxy object is associated
with.getTestDomain
in interface IProxyBase
getTestDomain
in class ProxyTestObject
TestDomain
class full name.public java.lang.String getDescriptiveName()
java.awt.Button
with the associated text "OK".getDescriptiveName
in class ProxyTestObject
public java.lang.String getUniqueId()
getUniqueId
in class ProxyTestObject
public boolean shouldBeMapped()
false
.shouldBeMapped
in class ProxyTestObject
true
if the represented control is interesting
other than for nested objects.public ProxyTestObject getParent()
null
if this object has no parent.getParent
in class ProxyTestObject
null
for a top-level object.public ProxyTestObject getMappableParent()
null
if this object has no mappable parent.
Note that only a proxy that shouldBeMapped
should be returned from this method.getMappableParent
in class ProxyTestObject
null
for a top-level mapped object.public ProxyTestObject getTopParent()
getTopParent
in class ProxyTestObject
public ProxyTestObject getTopMappableParent()
getTopMappableParent
in class ProxyTestObject
public ProxyTestObject[] getChildren()
getChildren
in class ProxyTestObject
public ProxyTestObject[] getMappableChildren()
getMappableChildren
in class ProxyTestObject
public ProxyTestObject getOwner()
null
if this object has no owner.getOwner
in class ProxyTestObject
null
for a top object without an owner.public ProxyTestObject[] getOwnedObjects()
getOwnedObjects
in class ProxyTestObject
public void processMouseEvent(IMouseActionInfo action)
action
with an appropriate
MethodSpecification
to play back the action. This
method is the primary record interface for mouse events against a particular
control. Only one MethodSpecification
is maintained in the
action state. If the active specification is valid, it is not updated.processMouseEvent
in class ProxyTestObject
action
- The event cache and other mouse state information
for this mouse action.IMouseActionInfo
,
com.rational.test.ft.sys.MethodSpecification
public MethodSpecification getMethodSpecForPoint(java.awt.Point pt)
MethodSpecification
for a method that returns a java.awt.Point
for the specified coordinates. By default, a method specification for
IGraphical.getScreenPoint
is returned.getMethodSpecForPoint
in class ProxyTestObject
action
- The event cache and other mouse state information
for this mouse action.com.rational.test.ft.sys.MethodSpecification
public java.util.Hashtable getRecognitionProperties()
hasFocus
or
isShowing
.getRecognitionProperties
in class ProxyTestObject
TestObjectProperty
.getRecognitionPropertyWeight(String)
,
getProperty(String)
,
addRecognitionProperty(String,Object,int)
public int getRecognitionPropertyWeight(java.lang.String propertyName)
getRecognitionPropertyWeight
in class ProxyTestObject
propertyName
- The name of the recognition property to
return a weight value for.getRecognitionProperties()
public void addRecognitionProperty(java.lang.String property, java.lang.Object value, int weight)
getRecognitionProperties()
.addRecognitionProperty
in class ProxyTestObject
property
- The recognition property name. Care should be taken to
avoid conflicts with existing property names.value
- The value of the added recognition property.weight
- The weight associated with this recognition property.
This value is returned when getRecognitionPropertyWeight()
is called.getRecognitionProperties()
,
getRecognitionPropertyWeight(String)
,
getProperty(String)
public boolean hasAddedRecognitionProperties()
true
if recognition properties have been added
to this proxy from an external source through addRecognitionProperty()
.hasAddedRecognitionProperties
in class ProxyTestObject
true
if recognition properties have been added
to this proxy from an external source through addRecognitionProperty(String,Object,int)
.addRecognitionProperty(String,Object,int)
public java.util.Hashtable getProperties()
This method does not return properties whose values are references
to objects. The method getNonValueProperties()
returns
information about such properties.
getProperties
in class ProxyTestObject
getProperty(String)
,
setProperty(String,Object)
,
getStandardProperties()
,
getNonValueProperties()
public java.util.Hashtable getStandardProperties()
getProperties()
.
The HTML domain supports standard properties and
returns properties that are consistent across browser versions.
The Java domain does not support this notion of standard properties.
In this domain, getStandardProperties,
and getProperties
do the same thing.
For HTML, standard properties are a subset
of the properties returned by getProperties()
.
The meaning of a property is specific to the test domain
and the test object. Typically, this is a set of name/value pairs
that describe the test object and its active state. Properties such
as font, colors, and coordinate information are typically associated
with a GUI test object. Associated data and state information can also
be returned, depending on the test object.getStandardProperties
in class ProxyTestObject
getProperty(String)
,
setProperty(String,Object)
,
getProperties()
,
getNonValueProperties()
public java.lang.Object getProperty(java.lang.String propertyName)
getProperties()
or getRecognitionProperties()
. If the property is not defined by either of these
methods, this method throws PropertyNotFoundException
.getProperty
in class ProxyTestObject
propertyName
- The name of the property to fetch.getProperties()
,
setProperty(String,Object)
,
getRecognitionProperties()
,
addRecognitionProperty(String,Object,int)
public void setProperty(java.lang.String propertyName, java.lang.Object value)
getProperties()
or getRecognitionProperties()
. Properties not defined by either of these
methods, and properties whose values cannot be modified throw an
appropriately populated PropertyNotFoundException
.setProperty
in class ProxyTestObject
propertyName
- The name of the property to redefine. This
name is the same as that returned by
getProperties()
.getProperties()
,
getProperty(String)
public java.util.Hashtable getNonValueProperties()
getProperty()
.
If such a property is returned to the test script, it is
manifested as a TestObject containing a reference to the
object in the SUT. The test script should call the TestObject
method unregister() to release the object.
When an object is unregistered, the release() method that all ProxyTestObjects inherit from RegisteredObject is called.
getNonValueProperties
in class ProxyTestObject
getProperties()
,
getStandardProperties()
,
getProperty(String)
,
setProperty(String,Object)
public java.lang.Object getIndexer(java.lang.String name, java.lang.Object[] indexes)
getIndexer
in class ProxyTestObject
name
- the name of the indexerindexes
- the indexes to get the value ofpublic IndexerInfo[] getIndexers()
TestObject's
indexed propertiesgetIndexers
in class ProxyTestObject
com.rational.test.ft.value.IndexerInfo
public void setIndexer(java.lang.String name, java.lang.Object[] indexes, java.lang.Object val)
setIndexer
in class ProxyTestObject
name
- the name of the indexerindexes
- the indexes to set the value ofpublic MethodInfo[] getMethods()
getMethods
in class ProxyTestObject
getProperties()
,
getStandardProperties()
,
getNonValueProperties()
public java.util.Hashtable getTestDataTypes()
String
objects that are used as the VP
type
in the associated test data. The type
is a
simple value that is different from other type values associated
with this object under test. The type
keys map to a verbose
description of the test data, reasonable for presentation to a
user.getTestDataTypes
in class ProxyTestObject
type
/description
pairs
used to describe the verification data available from this
proxy.ProxyTestObject.getTestData(String)
,
com.rational.test.ft.vp.ITestData
public HashtableEx getPropertyMap()