You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by cf...@apache.org on 2012/06/18 20:10:25 UTC

svn commit: r1351437 [6/12] - in /incubator/flex/trunk/frameworks/projects: automation_agent/ automation_agent/bundles/ automation_agent/bundles/da_DK/ automation_agent/bundles/de_DE/ automation_agent/bundles/en_US/ automation_agent/bundles/es_ES/ auto...

Added: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationObjectHelper.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationObjectHelper.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationObjectHelper.as (added)
+++ incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationObjectHelper.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,279 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 mx.automation
+{
+
+import flash.events.IEventDispatcher;
+import flash.events.KeyboardEvent;
+import flash.events.MouseEvent;
+
+/**
+ * The IAutomationObjectHelper interface defines 
+ * helper methods for IAutomationObjects.
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IAutomationObjectHelper
+{
+    /**
+     *  Creates an id for a given child within a parent.
+     *
+     *  @param parent Parent of object for which to create and id.
+     *
+     *  @param child Object for which to create an id.
+     *
+     *  @param automationNameCallback A user-supplied function used 
+     *  to determine the child's <code>automationName</code>.
+     *
+     *  @param automationIndexCallback A user-supplied function used 
+     *  to determine the child's <code>automationIndex</code>.
+     *
+     *  @return An AutomationIDPart object representing the child within the parent.
+     * 
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function helpCreateIDPart(parent:IAutomationObject,
+                              child:IAutomationObject,
+                              automationNameCallback:Function = null,
+                              automationIndexCallback:Function = null):AutomationIDPart;
+	
+	
+	/**
+	 *  Creates an id for a given child within a parent.
+	 *
+	 *  @param parent Parent of object for which to create and id.
+	 *
+	 *  @param child Object for which to create an id.
+	 *
+	 *  @param properties which needs to be considered for creating the id.
+	 *
+	 *  @param automationNameCallback A user-supplied function used 
+	 *  to determine the child's <code>automationName</code>.
+	 *
+	 *  @param automationIndexCallback A user-supplied function used 
+	 *  to determine the child's <code>automationIndex</code>.
+	 *
+	 *  @return An AutomationIDPart object representing the child within the parent.
+	 * 
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	function helpCreateIDPartWithRequiredProperties(parent:IAutomationObject,
+							  child:IAutomationObject,
+							  properties:Array,
+							  automationNameCallback:Function = null,
+							  automationIndexCallback:Function = null):AutomationIDPart;
+
+    /**
+     * Returns an Array of children within a parent which match the id.
+     *
+     * @param parent Parent object under which the id needs to be resolved.
+     *
+     * @param part AutomationIDPart object representing the child.
+     *
+     * @return Array of children which match the id of <code>part</code>.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function helpResolveIDPart(parent:IAutomationObject,
+                               part:Object):Array;
+
+    /**
+     * Dispatches a <code>KeyboardEvent.KEY_DOWN</code> and 
+     * <code>KeyboardEvent.KEY_UP</code> event 
+     * for the specified KeyboardEvent object.
+     * 
+     * @param to Event dispatcher.
+     *
+     * @param event Keyboard event.     
+     *
+     * @return <code>true</code> if the events were dispatched.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function replayKeyboardEvent(to:IEventDispatcher, event:KeyboardEvent):Boolean;
+
+    /**
+     * Dispatches a <code>KeyboardEvent.KEY_DOWN</code> and 
+     * <code>KeyboardEvent.KEY_UP</code> event 
+     * from the specified IInteractionReplayer, for the specified key, with the
+     * specified modifiers.
+     * 
+     * @param keyCode Key code for key pressed.
+     *
+     * @param ctrlKey Boolean indicating whether Ctrl key pressed.
+     *
+     * @param ctrlKey Boolean indicating whether Shift key pressed.
+     *
+     * @param ctrlKey Boolean indicating whether Alt key pressed.
+     *
+     * @return <code>true</code> if the events were dispatched.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function replayKeyDownKeyUp(to:IEventDispatcher,
+                                keyCode:uint,
+                                ctrlKey:Boolean = false,
+                                shiftKey:Boolean = false,
+                                altKey:Boolean = false):Boolean;
+        
+    /**
+     * Dispatches a MouseEvent while simulating mouse capture.
+     *
+     * @param target Event dispatcher.
+     *
+     * @param event Mouse event.
+     *
+     * @return <code>true</code> if the event was dispatched.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function replayMouseEvent(target:IEventDispatcher, event:MouseEvent):Boolean;
+
+    /**
+     * Dispatches a <code>MouseEvent.MOUSE_DOWN</code>, <code>MouseEvent.MOUSE_UP</code>, 
+     * and <code>MouseEvent.CLICK</code> from the specified IInteractionReplayer with the 
+     * specified modifiers.
+     *
+     * @param to Event dispatcher.
+     *
+     * @param sourceEvent Mouse event.
+     *
+     * @return <code>true</code> if the events were dispatched.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function replayClick(to:IEventDispatcher, sourceEvent:MouseEvent = null):Boolean;
+
+    /**
+     * Replays a <code>click</code> event outside of the main drawing area. 
+     * use this method to simulate the <code>mouseDownOutside</code> event.
+     *
+     * @return <code>true</code> if the event was dispatched.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function replayClickOffStage():Boolean;
+
+    /**
+     *  Indicates whether recording is taking place, <code>true</code>, 
+     *  or not, <code>false</code>.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get recording():Boolean;
+
+    /**
+     *  Indicates whether replay is taking place, <code>true</code>, 
+     *  or not, <code>false</code>.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get replaying():Boolean;
+
+    /**
+     *  Adds a synchronization object to the automation manager.
+     *  The automation manager waits until the <code>isComplete</code> method
+     *  returns <code>true</code>
+     *  before proceeding with the next replay event.
+     *  
+     *  @param isComplete Function that indicates whether the synchronized
+     *  operation is completed.
+     * 
+     *  @param target If null, all replay is stalled until  
+     *  the <code>isComplete</code> method returns <code>true</code>, 
+     *  otherwise the automation manager will only wait
+     *  if the next operation is on the target.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function addSynchronization(isComplete:Function,
+                                target:Object = null):void;
+
+    /**
+     *  Determines whether an object is a composite or not.
+     *  If an object is not reachable through the automation APIs 
+     *  from the top application then it is considered to be a composite.
+     *
+     *  @param obj The object.
+     *
+     * @return <code>true</code> if the object is a composite.     
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function isAutomationComposite(obj:IAutomationObject):Boolean;
+    
+    /**
+     *  Returns the parent of the composite object.
+     *
+     *  @param obj Composite object.
+     *
+     *  @return The parent IAutomationObject of the composite object.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function getAutomationComposite(obj:IAutomationObject):IAutomationObject;
+
+}
+
+}

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationObjectHelper.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationObjectHelper.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationPropertyDescriptor.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationPropertyDescriptor.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationPropertyDescriptor.as (added)
+++ incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationPropertyDescriptor.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,84 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 mx.automation
+{
+
+/**
+ * The IAutomationPropertyDescriptor interface describes a property of a test object.
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IAutomationPropertyDescriptor
+{
+    /**
+     * Name of the property.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get name():String;
+
+    /**
+     * Contains <code>true</code> if this property is used for object identification.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get forDescription():Boolean;
+
+    /**
+     * Contains <code>true</code> if this property is used for object state verification.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get forVerification():Boolean;
+
+    /**
+     * Default value of this property.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get defaultValue():String;
+    
+    /**
+     * ActionScript type of this property, as a String.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get asType():String;
+}
+
+}

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationPropertyDescriptor.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationPropertyDescriptor.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationTabularData.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationTabularData.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationTabularData.as (added)
+++ incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationTabularData.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,119 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 mx.automation
+{
+
+/**
+ *  The IAutomationTabularData interface is implemented by components 
+ *  which can provide their content information in a tabular form.
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IAutomationTabularData
+{
+
+    /**
+     *  The index of the first visible child.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get firstVisibleRow():int;
+    
+    /**
+     *  The index of the last visible child.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get lastVisibleRow():int;
+
+    /**
+     *  The total number of rows of data available.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get numRows():int;
+
+    /**
+     *  The total number of columns in the data available.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get numColumns():int;
+
+    /**
+     *  Names of all columns in the data.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get columnNames():Array;
+
+    /**
+     *  Returns a matrix containing the automation values of all parts of the components.
+     *  Should be row-major (return value is an Array of rows, each of which is
+     *  an Array of "items").
+     *
+     *  @param start The index of the starting child. 
+     *
+     *  @param end The index of the ending child.
+     *
+     *  @return A matrix containing the automation values of all parts of the components.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function getValues(start:uint = 0, end:uint = 0):Array;
+    
+    /**
+     *  Returns the values being displayed by the component for the given data.
+     *  
+     *  @param data The object representing the data.
+     * 
+     *  @return Array containing the values being displayed by the component.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function getAutomationValueForData(data:Object):Array;
+    
+}
+
+}

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationTabularData.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/automation/IAutomationTabularData.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/core/Version.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/core/Version.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/core/Version.as (added)
+++ incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/core/Version.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,26 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+import mx.core.mx_internal;
+
+/**
+ *  @private
+ *  Version string for this class.
+ */
+mx_internal static const VERSION:String = "4.0.0.0";

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/core/Version.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/automation_agent/src/mx/core/Version.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/tool/build.xml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/tool/build.xml?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/tool/build.xml (added)
+++ incubator/flex/trunk/frameworks/projects/tool/build.xml Mon Jun 18 18:10:20 2012
@@ -0,0 +1,83 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+
+-->
+<project name="tool" default="main" basedir=".">
+
+    <property name="FLEX_HOME" location="${basedir}/../../.."/>
+    <property file="${FLEX_HOME}/build.properties"/>
+    <property name="local.playerglobal.version" value="11.1"/>
+	
+    <target name="main" depends="clean,compile" description="Clean build of tool.swc"/>
+    
+	<property name="compc.jvm.args" value="-Dassert -ea -DAS3 -DAVMPLUS -Xms32m -Xmx384m -Dsun.io.useCanonCaches=false"/>
+	
+    <!-- since no bundles the main and bundle targets are same. To keep uniformity the target is added -->
+	<target name="main_with_ja_JP" depends="clean,compile" description="Clean build of tool.swc and en_US and ja_JP"/>
+    <target name="other.locales" description="Build other locale SWCs"/>
+	
+	<target name="clean">
+		<delete file="${FLEX_HOME}/frameworks/libs/tool.swc"/>
+		<delete file="${FLEX_HOME}/frameworks/libs/tool.swc.incr"/>
+	</target>
+
+    <target name="compile">
+        <echo message="Compiling tool.swc"/>
+        <!-- Load the <compc> task. We can't do this at the <project> level -->
+        <!-- because targets that run before flexTasks.jar gets built would fail. -->
+        <taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/lib/flexTasks.jar"/>
+        <!--
+            Link in the classes (and their dependencies) for the MXML tags
+            listed in this project's manifest.xml.
+            Also link the additional classes (and their dependencies)
+            listed in FrameworkClasses.as,
+            because these aren't referenced by the manifest classes.
+            Keep the standard metadata when compiling.
+            Link in accessibility support.
+            Include the appropriate CSS files and assets in the SWC.
+            Don't include any resources in the SWC.
+            Write a bundle list of referenced resource bundles
+            into the file bundles.properties in this directory.
+        -->
+        
+        <compc fork="true"
+               output="${FLEX_HOME}/frameworks/libs/tool.swc">
+            <jvmarg line="${compc.jvm.args}"/>
+            <target-player>${local.playerglobal.version}</target-player>
+            <include-classes>ToolClasses</include-classes>
+            <source-path path-element="${basedir}/src"/>
+            <source-path path-element="${FLEX_HOME}/frameworks/projects/automation/src"/>
+            <source-path path-element="${FLEX_HOME}/frameworks/projects/automation_spark/src"/>
+            <library-path/>
+            <external-library-path dir="${FLEX_HOME}/frameworks/libs">
+                <include name="player/${local.playerglobal.version}/playerglobal.swc"/>
+                <include name="automation_agent.swc"/>
+                <include name="framework.swc"/>
+                <include name="mx/mx.swc"/>
+                <include name="advancedgrids.swc"/>
+                <include name="charts.swc"/>
+                <include name="spark.swc"/>
+                <include name="textLayout.swc"/>
+                <include name="automation/automation_dmv.swc"/>
+                <include name="datavisualization.swc"/>
+                </external-library-path>
+            <locale/>
+            <accessible>true</accessible>
+        </compc>
+    </target>
+</project>

Propchange: incubator/flex/trunk/frameworks/projects/tool/build.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/tool/build.xml
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/tool/src/ToolClasses.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/tool/src/ToolClasses.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/tool/src/ToolClasses.as (added)
+++ incubator/flex/trunk/frameworks/projects/tool/src/ToolClasses.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,42 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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
+{
+
+/**
+ *  @private
+ *  In some projects, this class is used to link additional classes
+ *  into the SWC beyond those that are found by dependency analysis
+ *  starting from the classes specified in manifest.xml.
+ *  This project has no manifest file (because there are no MXML tags
+ *  corresponding to any classes in it) so all the classes linked into
+ *  the SWC are found by a dependency analysis starting from the classes
+ *  listed here.
+ */
+internal class ToolClasses
+{
+	import mx.automation.tool.ToolAdapter; ToolAdapter;
+	import mx.automation.tool.ToolAgent; ToolAgent;
+	import mx.automation.tool.ToolEnvironment; ToolEnvironment;
+	// Maintain alphabetical order
+}
+
+}
+

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/ToolClasses.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/ToolClasses.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolAutomationClass.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolAutomationClass.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolAutomationClass.as (added)
+++ incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolAutomationClass.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,41 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 mx.automation.tool
+{
+
+import flash.events.Event;
+import mx.automation.IAutomationClass;
+
+/**
+ * Inteface for agents to communicate component class information
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IToolAutomationClass extends IAutomationClass
+{
+
+    function get propertyLowerCaseMap():Object;
+
+}
+
+}

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolAutomationClass.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolAutomationClass.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolCodecHelper.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolCodecHelper.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolCodecHelper.as (added)
+++ incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolCodecHelper.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,99 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 mx.automation.tool
+{
+
+import mx.automation.IAutomationObject;	
+	
+public interface IToolCodecHelper
+{
+    /**
+     *  Encodes properties in an AS object to an array of values for a testing tool
+     *  using the codecs.  Since the object being passed in may not be an IAutomationObject 
+     *  (it could be an event class) and some of the properties require the
+     *  IAutomationObject to be transcoded (such as the item renderers in
+     *  a list event), relativeParent should always be set to the relevant
+     *  IAutomationObject.
+     *
+     *  @param obj the object that contains the properties to be encoded.
+     * 
+     *  @param propertyDescriptors the property descriptors that describes the properties for this object.
+     * 
+     *  @param relativeParent the IAutomationObject that is related to this object.
+     *
+     *  @return the encoded property value.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function encodeProperties(obj:Object, 
+                              propertyDescriptors:Array, 
+                              relativeParent:IAutomationObject):Array;
+
+    /**
+     *  Encodes a single value to a testing tool value.  Unlike encodeProperties which
+     *  takes an object which contains all the properties to encode, this method
+     *  takes the actual value to encode.  This is useful for encoding return values.
+     *
+     *  @param obj the value to be encoded.
+     * 
+     *  @param propertyDescriptor the property descriptor that describes this value.
+     * 
+     *  @param relativeParent the IAutomationObject that is related to this value.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+     
+    function encodeValue(value:Object, 
+                         testingToolType:String,
+                         codecName:String,
+                         relativeParent:IAutomationObject):Object;
+
+    /**
+     *  Decodes an array of properties from a testing tool into an AS object.
+     *  using the codecs.
+     *
+     *  @param obj the object that contains the properties to be encoded.
+     * 
+     *  @param args the property values to transcode.
+     * 
+     *  @param propertyDescriptors the property descriptors that describes the properties for this object.
+     * 
+     *  @param relativeParent the IAutomationObject that is related to this object.
+     *
+     *  @return the decoded property value.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function decodeProperties(obj:Object, 
+                              args:Array,
+                              propertyDescriptors:Array,
+                              relativeParent:IAutomationObject):void;
+
+}		
+}

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolCodecHelper.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolCodecHelper.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolMethodDescriptor.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolMethodDescriptor.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolMethodDescriptor.as (added)
+++ incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolMethodDescriptor.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,47 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 mx.automation.tool
+{
+
+import mx.automation.IAutomationMethodDescriptor;
+
+/**
+ *  Defines the interface for a method descriptor.
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IToolMethodDescriptor extends IAutomationMethodDescriptor
+{
+    /**
+     *  Returns the codec name for the return value of this method
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get codecName():String;
+
+}
+
+}

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolMethodDescriptor.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolMethodDescriptor.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolPropertyDescriptor.as
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolPropertyDescriptor.as?rev=1351437&view=auto
==============================================================================
--- incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolPropertyDescriptor.as (added)
+++ incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolPropertyDescriptor.as Mon Jun 18 18:10:20 2012
@@ -0,0 +1,57 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 mx.automation.tool
+{
+
+import mx.automation.IAutomationPropertyDescriptor
+
+/**
+ * Describes a property of a test object.
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IToolPropertyDescriptor extends IAutomationPropertyDescriptor
+{
+	/**
+	 * Property type as string.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+    function get Tooltype():String;
+
+	/**
+	 * The codec that should be used for this property.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+    function get codecName():String;
+
+}
+
+}

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolPropertyDescriptor.as
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/flex/trunk/frameworks/projects/tool/src/mx/automation/tool/IToolPropertyDescriptor.as
------------------------------------------------------------------------------
    svn:mime-type = text/plain