incubator-flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From p...@apache.org
Subject svn commit: r1369970 [3/16] - in /incubator/flex/trunk/mustella/tests/Managers: ./ CursorManager/ CursorManager/Methods/ CursorManager/Props/ CursorManager/SWFs/ CursorManager/SWFs/Assets/ DragManager/ DragManager/Events/ DragManager/Halo/ DragManager/...
Date Mon, 06 Aug 2012 20:17:23 GMT
Added: incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_ComponentTests.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_ComponentTests.mxml?rev=1369970&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_ComponentTests.mxml (added)
+++ incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_ComponentTests.mxml Mon Aug  6 20:17:09 2012
@@ -0,0 +1,632 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  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.
+
+-->
+<UnitTester testDir="Managers/DragManager/Halo/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="DragManager_Comps.mxml">
+
+    <mx:Script>
+	<![CDATA[
+	   import data.ListDataAS;
+	   import comps.DragList;
+	   import comps.DragDataGrid;
+		import comps.CustomComp;
+
+       public static function init(o:DisplayObject):void
+		{
+
+		}
+
+	    private function addData(component:Object): void
+	    {
+	        var newData:ListDataAS = new ListDataAS();
+	        component.dataProvider = newData.myData;
+	    }
+	]]>
+	</mx:Script>
+
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>
+
+	<testCases>
+	<!-- Drag List to List-->
+        <TestCase testID="DragManager_ListToList_singleMove" description="Test that you can move List items from one to the other." keywords="[DragManager, List]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+	            <AssertPropertyValue propertyName="label" target="secondList.dataProvider.0" value="Toys" />
+	            <AssertPropertyValue propertyName="length" target="firstList.dataProvider" value="9" />
+			</body>
+		</TestCase>
+        <TestCase testID="DragManager_ListToList_multipleMove" description="Test that you can move multiple items of a List by drag and drop." keywords="[DragManager, List, multi-selection]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <SetProperty propertyName="allowMultipleSelection" value="true" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondList" waitTarget="secondList"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+                <DispatchMouseClickEvent target="firstList.mx_internal:rendererArray.1.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstList" ctrlKey="true" />
+			    <DispatchMouseClickEvent target="firstList.mx_internal:rendererArray.2.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstList" ctrlKey="true" />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.1.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.1.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="75" />
+				<AssertPropertyValue propertyName="length" target="secondList.dataProvider" value="2" />
+				<AssertPropertyValue propertyName="length" target="firstList.dataProvider" value="8" />
+			 </body>
+		</TestCase>
+        <TestCase testID="DragManager_ListToList_singleCopy" description="Test that you can copy List items from one to the other." keywords="[DragManager, List]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondList" waitTarget="secondList"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+	            <AssertPropertyValue propertyName="label" target="secondList.dataProvider.0" value="Toys" />
+	            <AssertPropertyValue propertyName="length" target="firstList.dataProvider" value="10" />
+			</body>
+		</TestCase>
+        <TestCase testID="DragManager_ListToList_multipleCopy" description="Test that you can copy multiple items of a List by drag and drop." keywords="[DragManager, List, multi-selection]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <SetProperty propertyName="allowMultipleSelection" value="true" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondList" waitTarget="secondList"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+                <DispatchMouseClickEvent target="firstList.mx_internal:rendererArray.1.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstList" ctrlKey="true" />
+			    <DispatchMouseClickEvent target="firstList.mx_internal:rendererArray.2.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstList" ctrlKey="true" />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.1.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.1.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="75" />
+				<AssertPropertyValue propertyName="length" target="secondList.dataProvider" value="2" />
+				<AssertPropertyValue propertyName="length" target="firstList.dataProvider" value="10" />
+			 </body>
+		</TestCase>
+        <TestCase testID="DragManager_ListToList_multipleCopy_sameItem" description="Usecase for bug SDK-9646." keywords="[DragManager, List, Bug]">
+             <setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondList" waitTarget="secondList"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <WaitForEffectsToEnd />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" />
+	            <WaitForEffectsToEnd />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <WaitForEffectsToEnd />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" />
+	            <WaitForEffectsToEnd />
+			    <DispatchMouseClickEvent target="secondList.mx_internal:rendererArray.0.0" localX="50" localY="15" waitTarget="secondList" waitEvent="change" />
+	            <DispatchMouseClickEvent target="secondList.mx_internal:rendererArray.1.0" localX="50" localY="15" waitTarget="secondList" waitEvent="change" />
+	            <AssertEvent eventName="change" target="secondList" eventClass="mx.events::ListEvent" numExpectedEvents="1"/>
+	           	<AssertEventPropertyValue target="secondList" propertyName="rowIndex" value="1" />
+			</body>
+		</TestCase>
+        <TestCase testID="DragManager_ListToList_dragEnabledFalse" description="Test that you cannot drag when dragEnabled=false." keywords="[DragManager, List]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondList" waitTarget="secondList"
+			       waitEvent="updateComplete" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" />
+	            <AssertPropertyValue propertyName="length" target="secondList.dataProvider" value="0" />
+	            <AssertPropertyValue propertyName="length" target="firstList.dataProvider" value="10" />
+			</body>
+		</TestCase>
+	<!-- Drag DataGrid to DataGrid-->
+        <TestCase testID="DragManager_DGridToDGrid_singleMove" description="Test that you can move DataGrid items from one to the other." keywords="[DragManager, DataGrid]">
+			<setup>
+			   <ResetComponent target="firstDataGrid" className="mx.controls.DataGrid" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="firstDataGrid" />
+			   <RunCode code="addData(application.firstDataGrid)" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstDataGrid" />
+			   <ResetComponent target="secondDataGrid" className="mx.controls.DataGrid" waitTarget="secondDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="secondDataGrid" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.3" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.3" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="245" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="255" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="255" waitTarget="secondDataGrid" waitEvent="dragDrop" />
+	            <AssertPropertyValue propertyName="label" target="secondDataGrid.dataProvider.0" value="Toys" />
+	            <AssertPropertyValue propertyName="length" target="firstDataGrid.dataProvider" value="9" />
+			</body>
+		</TestCase>
+
+       <TestCase testID="DragManager_DataGridToDataGrid_multipleMove" description="Test that you can move multiple items of a DataGrid by drag and drop." keywords="[DragManager, DataGrid, multi-selection]">
+			<setup>
+			   <ResetComponent target="firstDataGrid" className="mx.controls.DataGrid" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="firstDataGrid" />
+			   <SetProperty propertyName="allowMultipleSelection" value="true" target="firstDataGrid" />
+			   <RunCode code="addData(application.firstDataGrid)" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstDataGrid" />
+			   <ResetComponent target="secondDataGrid" className="mx.controls.DataGrid" waitTarget="secondDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="secondDataGrid" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondDataGrid" waitTarget="secondDataGrid"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+                <DispatchMouseClickEvent target="firstDataGrid.mx_internal:rendererArray.1.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstDataGrid" ctrlKey="true" />
+			    <DispatchMouseClickEvent target="firstDataGrid.mx_internal:rendererArray.2.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstDataGrid" ctrlKey="true" />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="245" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="245" />
+				<AssertPropertyValue propertyName="length" target="secondDataGrid.dataProvider" value="2" />
+				<AssertPropertyValue propertyName="length" target="firstDataGrid.dataProvider" value="8" />
+			 </body>
+		</TestCase>
+        <TestCase testID="DragManager_DataGridToDataGrid_singleCopy" description="Test that you can copy DataGrid items from one to the other." keywords="[DragManager, DataGrid]">
+			<setup>
+			   <ResetComponent target="firstDataGrid" className="mx.controls.DataGrid" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="firstDataGrid" />
+			   <RunCode code="addData(application.firstDataGrid)" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <ResetComponent target="secondDataGrid" className="mx.controls.DataGrid" waitTarget="secondDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="secondDataGrid" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondDataGrid" waitTarget="secondDataGrid"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.3" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.3" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="245" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="255" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="255" />
+				<AssertPropertyValue propertyName="label" target="secondDataGrid.dataProvider.0" value="Toys" />
+	            <AssertPropertyValue propertyName="length" target="firstDataGrid.dataProvider" value="10" />
+			</body>
+		</TestCase>
+        <TestCase testID="DragManager_DataGridToDataGrid_multipleCopy" description="Test that you can copy multiple items of a DataGrid by drag and drop." keywords="[DragManager, DataGrid, multi-selection]">
+			<setup>
+			   <ResetComponent target="firstDataGrid" className="mx.controls.DataGrid" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="firstDataGrid" />
+			   <SetProperty propertyName="allowMultipleSelection" value="true" target="firstDataGrid" />
+			   <RunCode code="addData(application.firstDataGrid)" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <ResetComponent target="secondDataGrid" className="mx.controls.DataGrid" waitTarget="secondDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="secondDataGrid" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondDataGrid" waitTarget="secondDataGrid"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+                <DispatchMouseClickEvent target="firstDataGrid.mx_internal:rendererArray.1.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstDataGrid" ctrlKey="true" />
+			    <DispatchMouseClickEvent target="firstDataGrid.mx_internal:rendererArray.2.0" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstDataGrid" ctrlKey="true" />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="245" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="245" />
+				<AssertPropertyValue propertyName="length" target="secondDataGrid.dataProvider" value="2" />
+				<AssertPropertyValue propertyName="length" target="firstDataGrid.dataProvider" value="10" />
+			 </body>
+		</TestCase>
+        <TestCase testID="DragManager_DataGridToDataGrid_dragEnabledFalse" description="Test that you cannot drag when dragEnabled=false." keywords="[DragManager, DataGrid]">
+			<setup>
+			   <ResetComponent target="firstDataGrid" className="mx.controls.DataGrid" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="width" value="250" target="firstDataGrid" />
+			   <RunCode code="addData(application.firstDataGrid)" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <ResetComponent target="secondDataGrid" className="mx.controls.DataGrid" waitTarget="secondDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondDataGrid" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondDataGrid" waitTarget="secondDataGrid"
+			       waitEvent="updateComplete" />
+			   <SetProperty propertyName="width" value="250" target="secondDataGrid" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="245" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="245" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="255" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="255" />
+	            <AssertPropertyValue propertyName="length" target="secondDataGrid.dataProvider" value="0" />
+	            <AssertPropertyValue propertyName="length" target="firstDataGrid.dataProvider" value="10" />
+			</body>
+		</TestCase>
+	<!-- Drag TileList to TileList-->
+        <TestCase testID="DragManager_TileListToTileList_singleMove" description="Test that you can move TileList items from one to the other." keywords="[DragManager, TileList]">
+			<setup>
+			   <ResetComponent target="firstTileList" className="mx.controls.TileList" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstTileList" />
+			   <SetProperty propertyName="width" value="250" target="firstTileList" />
+			   <RunCode code="addData(application.firstTileList)" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstTileList" />
+			   <ResetComponent target="secondTileList" className="mx.controls.TileList" waitTarget="secondTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondTileList" />
+			   <SetProperty propertyName="width" value="250" target="secondTileList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="435" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="445" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="445" waitTarget="secondTileList" waitEvent="dragDrop" />
+	            <AssertPropertyValue propertyName="label" target="secondTileList.dataProvider.0" value="Toys" />
+	            <AssertPropertyValue propertyName="length" target="firstTileList.dataProvider" value="9" />
+			</body>
+		</TestCase>
+       <TestCase testID="DragManager_TileListToTileList_multipleMove" description="Test that you can move multiple items of a TileList by drag and drop." keywords="[DragManager, TileList, multi-selection]">
+			<setup>
+			   <ResetComponent target="firstTileList" className="mx.controls.TileList" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstTileList" />
+			   <SetProperty propertyName="width" value="250" target="firstTileList" />
+			   <SetProperty propertyName="allowMultipleSelection" value="true" target="firstTileList" />
+			   <RunCode code="addData(application.firstTileList)" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstTileList" />
+			   <ResetComponent target="secondTileList" className="mx.controls.TileList" waitTarget="secondTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondTileList" />
+			   <SetProperty propertyName="width" value="250" target="secondTileList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondTileList" waitTarget="secondTileList"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+                <DispatchMouseClickEvent target="firstTileList.mx_internal:rendererArray.0.1" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstTileList" ctrlKey="true" />
+			    <DispatchMouseClickEvent target="firstTileList.mx_internal:rendererArray.0.2" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstTileList" ctrlKey="true" />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.1" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.1" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="435" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="435" />
+				<AssertPropertyValue propertyName="length" target="secondTileList.dataProvider" value="2" />
+				<AssertPropertyValue propertyName="length" target="firstTileList.dataProvider" value="8" />
+			 </body>
+		</TestCase>
+        <TestCase testID="DragManager_TileListToTileList_singleCopy" description="Test that you can copy TileList items from one to the other." keywords="[DragManager, TileList]">
+			<setup>
+			   <ResetComponent target="firstTileList" className="mx.controls.TileList" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstTileList" />
+			   <SetProperty propertyName="width" value="250" target="firstTileList" />
+			   <RunCode code="addData(application.firstTileList)" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondTileList" className="mx.controls.TileList" waitTarget="secondTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondTileList" />
+			   <SetProperty propertyName="width" value="250" target="secondTileList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondTileList" waitTarget="secondTileList"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.1.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.1.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="435" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="445" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="445" />
+				<AssertPropertyValue propertyName="label" target="secondTileList.dataProvider.0" value="White Squares" />
+	            <AssertPropertyValue propertyName="length" target="firstTileList.dataProvider" value="10" />
+			</body>
+		</TestCase>
+        <TestCase testID="DragManager_TileListToTileList_multipleCopy" description="Test that you can copy multiple items of a TileList by drag and drop." keywords="[DragManager, TileList, multi-selection]">
+			<setup>
+			   <ResetComponent target="firstTileList" className="mx.controls.TileList" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstTileList" />
+			   <SetProperty propertyName="width" value="250" target="firstTileList" />
+			   <SetProperty propertyName="allowMultipleSelection" value="true" target="firstTileList" />
+			   <RunCode code="addData(application.firstTileList)" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondTileList" className="mx.controls.TileList" waitTarget="secondTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondTileList" />
+			   <SetProperty propertyName="width" value="250" target="secondTileList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondTileList" waitTarget="secondTileList"
+			       waitEvent="updateComplete" />
+			 </setup>
+			 <body>
+                <DispatchMouseClickEvent target="firstTileList.mx_internal:rendererArray.0.1" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstTileList" ctrlKey="true" />
+			    <DispatchMouseClickEvent target="firstTileList.mx_internal:rendererArray.0.2" localX="4" localY="5" waitEvent="itemClick" waitTarget="firstTileList" ctrlKey="true" />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.1" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.1" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="435" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="435" />
+				<AssertPropertyValue propertyName="length" target="secondTileList.dataProvider" value="2" />
+				<AssertPropertyValue propertyName="length" target="firstTileList.dataProvider" value="10" />
+			 </body>
+		</TestCase>
+        <TestCase testID="DragManager_TileListToTileList_dragEnabledFalse" description="Test that you cannot drag when dragEnabled=false." keywords="[DragManager, TileList]">
+			<setup>
+			   <ResetComponent target="firstTileList" className="mx.controls.TileList" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="width" value="250" target="firstTileList" />
+			   <RunCode code="addData(application.firstTileList)" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondTileList" className="mx.controls.TileList" waitTarget="secondTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondTileList" />
+			   <SetProperty propertyName="dataProvider" valueExpression="value=[]" target="secondTileList" waitTarget="secondTileList"
+			       waitEvent="updateComplete" />
+			   <SetProperty propertyName="width" value="250" target="secondTileList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="435" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="445" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="445" />
+	            <AssertPropertyValue propertyName="length" target="secondTileList.dataProvider" value="0" />
+	            <AssertPropertyValue propertyName="length" target="firstTileList.dataProvider" value="10" />
+			</body>
+		</TestCase>
+        <TestCase testID="DragManager_DGridToDGrid_singleMoveToTop" description="Test that you can move DataGrid items from one to the other multiple times." keywords="[DragManager, DataGrid]">
+			<setup>
+			   <ResetComponent target="firstDataGrid" className="mx.controls.DataGrid" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="firstDataGrid" />
+			   <RunCode code="addData(application.firstDataGrid)" waitTarget="firstDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstDataGrid" />
+			   <ResetComponent target="secondDataGrid" className="mx.controls.DataGrid" waitTarget="secondDataGrid" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondDataGrid" />
+			   <SetProperty propertyName="width" value="250" target="secondDataGrid" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.3" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.1.3" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="245" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="245" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="245" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="245" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="255" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="255" waitTarget="secondDataGrid" waitEvent="dragDrop" />
+	            <WaitForEffectsToEnd />
+	            <DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.4.3" type="mouseOver" localX="5" localY="5"  />
+				<DispatchMouseEvent target="firstDataGrid.mx_internal:rendererArray.4.3" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+				<DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="205" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="205" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="205" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="205" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="212" buttonDown="true"
+			        waitTarget="mx.managers::DragManager.mx_internal:dragProxy"/>
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="212" waitTarget="secondDataGrid" waitEvent="dragDrop" />
+
+	            <AssertPropertyValue propertyName="text" target="secondDataGrid.mx_internal:rendererArray.1.2" value="Movies" />
+	            <AssertPropertyValue propertyName="length" target="firstDataGrid.dataProvider" value="8" />
+			</body>
+		</TestCase>
+	<!-- Drag TileList to TileList : custom renderers-->
+        <TestCase testID="DragManager_TileListToTileList_customRenderers" description="Test that you can move customRenderer TileList items from one to the other." keywords="[DragManager, itemRenderers, TileList]">
+			<setup>
+			   <ResetComponent target="firstTileList" className="mx.controls.TileList" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstTileList" />
+			   <SetProperty propertyName="width" value="250" target="firstTileList" />
+			   <SetProperty propertyName="itemRenderer" target="firstTileList" valueExpression="value=new ClassFactory(CustomComp)" />
+			   <RunCode code="addData(application.firstTileList)" waitTarget="firstTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstTileList" />
+			   <ResetComponent target="secondTileList" className="mx.controls.TileList" waitTarget="secondTileList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondTileList" />
+			   <SetProperty propertyName="width" value="250" target="secondTileList" />
+			   <SetProperty propertyName="itemRenderer" target="secondTileList" valueExpression="value=new ClassFactory(CustomComp)" waitTarget="secondTileList" waitEvent="updateComplete" />
+
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstTileList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="435" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="435" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="445" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="445" waitTarget="secondTileList" waitEvent="dragDrop" />
+	            <AssertPropertyValue propertyName="label" target="secondTileList.dataProvider.0" value="Toys" />
+	            <AssertPropertyValue propertyName="length" target="firstTileList.dataProvider" value="9" />
+			</body>
+		</TestCase>
+		<TestCase testID="DragManager_dropIndicatorSkin" description="Set a custom dropIndicatorSkin on a List." keywords="[DragManager, dropIndicatorSkin, List]">
+			<setup>
+			   <WaitForEffectsToEnd />
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <SetStyle target="firstList" styleName="dropIndicatorSkin" valueExpression="value=application.cartoon" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetStyle target="secondList" styleName="dropIndicatorSkin" valueExpression="value=application.cartoon" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <CompareBitmap target="secondList.mx_internal:dropIndicator" url="../Halo/baselines/customDropIndicatorSkin.png" timeout="2500" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+	          </body>
+		</TestCase>
+		<!--- method: showDropFeedback -->
+        <TestCase testID="DragManager_method_showDropFeedback" description="Test the method showDropFeedback." keywords="[DragManager, showDropFeedback, List]">
+			<setup>
+			   <WaitForEffectsToEnd />
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <RunCode code="application.secondList.addEventListener('dragOver', application.doDragOver)" />
+			   <SetProperty propertyName="width" value="250" target="secondList" waitEvent="updateComplete" waitTarget="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="430" localY="85" buttonDown="true" />
+	            <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="95" buttonDown="true" waitTarget="secondList" waitEvent="dragOver" />
+	            <CompareBitmap target="secondList.mx_internal:dropIndicator" url="../Halo/baselines/showDropFeedbackTest.png" timeout="2500" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="95" waitTarget="secondList" waitEvent="dragDrop" />
+	          </body>
+		</TestCase>
+
+	</testCases>
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors.mxml?rev=1369970&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors.mxml (added)
+++ incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors.mxml Mon Aug  6 20:17:09 2012
@@ -0,0 +1,147 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  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.
+
+-->
+<UnitTester testDir="Managers/DragManager/Halo/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="DragManager_customcursors.mxml">
+
+    <mx:Script>
+	<![CDATA[
+	   import data.ListDataAS;
+	   import comps.DragList;
+	   import comps.DragDataGrid;
+		import comps.CustomComp;
+
+       public static function init(o:DisplayObject):void
+		{
+
+		}
+
+	    private function addData(component:Object): void
+	    {
+	        var newData:ListDataAS = new ListDataAS();
+	        component.dataProvider = newData.myData;
+	    }
+	]]>
+	</mx:Script>
+
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>
+
+	<testCases>
+		<!--- custom copyCursor -->
+        <TestCase testID="DragManager_copyCursor" description="Test that a custom copyCursor works." keywords="[DragManager, copyCursor, List]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+	            <CompareBitmap target="secondList" url="../Halo/baselines/copyCursor_custom.png" timeout="2500" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+	        </body>
+		</TestCase>
+		<!--- custom moveCursor -->
+        <TestCase testID="DragManager_moveCursor" description="Test that a custom moveCursor works." keywords="[DragManager, moveCursor, List]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+	            <CompareBitmap target="secondList" url="../Halo/baselines/moveCursor_custom.png" timeout="2500" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+	        </body>
+		</TestCase>
+		<!--- custom rejectCursor -->
+        <TestCase testID="DragManager_rejectCursor" description="Test that a custom rejectCursor works." keywords="[DragManager, rejectCursor, List]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+	            <CompareBitmap target="secondList" url="../Halo/baselines/rejectCursor_custom.png" timeout="2500" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" />
+	        </body>
+		</TestCase>
+		<!--- custom linkCursor >
+        <TestCase testID="DragManager_linkCursor" description="Test that a custom linkCursor works." keywords="[DragManager, linkCursor, List]">
+			<setup>
+			   <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+			   <SetProperty propertyName="width" value="250" target="firstList" />
+			   <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+			   <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+			   <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+			   <SetProperty propertyName="width" value="250" target="secondList" />
+			 </setup>
+			 <body>
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+			    <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" shiftKey="true" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+			    <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true" 	waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+	            <CompareBitmap target="secondList" url="../Halo/baselines/linkCursor_custom.png" timeout="2500" />
+	            <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+	        </body>
+		</TestCase-->
+	</testCases>
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors_RTL.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors_RTL.mxml?rev=1369970&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors_RTL.mxml (added)
+++ incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_Cursors_RTL.mxml Mon Aug  6 20:17:09 2012
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  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.
+
+-->
+<UnitTester testDir="Managers/DragManager/Halo/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="DragManager_customcursors_RTL.mxml">
+
+    <mx:Script>
+    <![CDATA[
+       import data.ListDataAS;
+       import comps.DragList;
+       import comps.DragDataGrid;
+        import comps.CustomComp;
+
+       public static function init(o:DisplayObject):void
+        {
+
+        }
+
+        private function addData(component:Object): void
+        {
+            var newData:ListDataAS = new ListDataAS();
+            component.dataProvider = newData.myData;
+        }
+    ]]>
+    </mx:Script>
+
+    <mx:Metadata>
+    <![CDATA[
+        [Mixin]
+    ]]>
+    </mx:Metadata>
+
+    <testCases>
+        <!--- custom copyCursor -->
+        <TestCase testID="DragManager_Mirroring_copyCursor" description="Test that a custom copyCursor works." keywords="[DragManager, Mirroring, copyCursor, List]">
+            <setup>
+               <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+               <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+               <SetProperty propertyName="width" value="250" target="firstList" />
+               <SetProperty propertyName="layoutDirection" value="rtl" target="firstList" />
+               <SetStyle styleName="direction" value="rtl" target="firstList" />
+               <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+               <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+               <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+               <SetProperty propertyName="width" value="250" target="secondList" />
+               <SetProperty propertyName="layoutDirection" value="rtl" target="secondList" />
+               <SetStyle styleName="direction" value="rtl" target="secondList" />
+             </setup>
+             <body>
+                <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+                <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+                    waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <CompareBitmap target="secondList" url="../Halo/baselines/$testID.png" timeout="2500" />
+                <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+            </body>
+        </TestCase>
+        <!--- custom moveCursor -->
+        <TestCase testID="DragManager_Mirroring_moveCursor" description="Test that a custom moveCursor works." keywords="[DragManager, Mirroring, moveCursor, List]">
+            <setup>
+               <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+               <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+               <SetProperty propertyName="width" value="250" target="firstList" />
+               <SetProperty propertyName="layoutDirection" value="rtl" target="firstList" />
+               <SetStyle styleName="direction" value="rtl" target="firstList" />
+               <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+               <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+               <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+               <SetProperty propertyName="dropEnabled" value="true" target="secondList" />
+               <SetProperty propertyName="width" value="250" target="secondList" />
+               <SetProperty propertyName="layoutDirection" value="rtl" target="secondList" />
+               <SetStyle styleName="direction" value="rtl" target="secondList" />
+             </setup>
+             <body>
+                <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+                <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+                    waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <CompareBitmap target="secondList" url="../Halo/baselines/$testID.png" timeout="2500" />
+                <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" waitTarget="secondList" waitEvent="dragDrop" />
+            </body>
+        </TestCase>
+        <!--- custom rejectCursor -->
+        <TestCase testID="DragManager_Mirroring_rejectCursor" description="Test that a custom rejectCursor works." keywords="[DragManager, Mirroring, rejectCursor, List]">
+            <setup>
+               <ResetComponent target="firstList" className="mx.controls.List" waitTarget="firstList" waitEvent="updateComplete" />
+               <SetProperty propertyName="dragEnabled" value="true" target="firstList" />
+               <SetProperty propertyName="width" value="250" target="firstList" />
+               <SetProperty propertyName="layoutDirection" value="rtl" target="firstList" />
+               <SetStyle styleName="direction" value="rtl" target="firstList" />
+               <SetProperty propertyName="dragMoveEnabled" value="true" target="firstList" />
+               <RunCode code="addData(application.firstList)" waitTarget="firstList" waitEvent="updateComplete" />
+               <ResetComponent target="secondList" className="mx.controls.List" waitTarget="secondList" waitEvent="updateComplete" />
+               <SetProperty propertyName="width" value="250" target="secondList" />
+               <SetProperty propertyName="layoutDirection" value="rtl" target="secondList" />
+               <SetStyle styleName="direction" value="rtl" target="secondList" />
+             </setup>
+             <body>
+                <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseOver" localX="5" localY="5"  />
+                <DispatchMouseEvent target="firstList.mx_internal:rendererArray.0.0" type="mouseDown" localX="5" localY="5" buttonDown="true" />
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="100" localY="75" buttonDown="true"
+                    waitTarget="mx.managers::DragManager.mx_internal:dragProxy" />
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="200" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="260" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="350" localY="75" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <DispatchMouseEvent target="stage" type="mouseMove" localX="480" localY="85" buttonDown="true"  waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+                <CompareBitmap target="secondList" url="../Halo/baselines/$testID.png" timeout="2500" />
+                <DispatchMouseEvent target="stage" type="mouseUp" localX="480" localY="85" />
+            </body>
+        </TestCase>
+
+    </testCases>
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_CustomTests.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_CustomTests.mxml?rev=1369970&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_CustomTests.mxml (added)
+++ incubator/flex/trunk/mustella/tests/Managers/DragManager/Halo/DragManager_CustomTests.mxml Mon Aug  6 20:17:09 2012
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  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.
+
+-->
+<UnitTester testDir="Managers/DragManager/Halo/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="DragManager_Custom.mxml">
+
+    <mx:Script>
+	<![CDATA[
+
+       import mx.styles.StyleManager;
+
+       public static function init(o:DisplayObject):void
+		{
+
+		}
+
+	]]>
+	</mx:Script>
+
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>
+
+	<testCases>
+<!-- custom drag of an Image -->
+	    <TestCase testID="DragManager_custom_image" description="Test that you can drag an image by creating a DragSource." keywords="[DragManager, DragSource]">
+			<body>
+			     <DispatchMouseEvent target="myImage" type="mouseOver" localX="15" localY="15"  />
+			     <DispatchMouseEvent target="myImage" type="mouseDown" localX="15" localY="15" buttonDown="true" />
+			     <DispatchMouseEvent target="v1" type="mouseMove" localX="20" localY="30" buttonDown="true"
+						waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseMove" localX="50" localY="60" buttonDown="true"
+						waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseMove" localX="100" localY="75" buttonDown="true"
+						waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseUp" localX="100" localY="75" buttonDown="true"
+						waitTarget="myImage" waitEvent="dragComplete" />
+				<AssertPropertyValue target="myImage" propertyName="x" value="85" />
+				<AssertPropertyValue target="myImage" propertyName="y" value="60" />
+			</body>
+	    </TestCase>
+	    <TestCase testID="DragManager_custom_mxmlComp" description="Test that you can drag an mxml component by creating a DragSource." keywords="[DragManager, DragSource]">
+			<body>
+			     <WaitForEffectsToEnd />
+			     <DispatchMouseEvent target="comp" type="mouseOver" localX="15" localY="15"  />
+			     <DispatchMouseEvent target="comp" type="mouseDown" localX="15" localY="15" buttonDown="true" />
+			     <DispatchMouseEvent target="v1" type="mouseMove" localX="20" localY="280" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseMove" localX="50" localY="310" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseMove" localX="100" localY="325" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseUp" localX="100" localY="325" buttonDown="true"
+					waitTarget="comp" waitEvent="dragComplete" />
+				<AssertPropertyValue target="comp" propertyName="x" value="85" />
+				<AssertPropertyValue target="comp" propertyName="y" value="310" />
+			</body>
+	    </TestCase>
+        <TestCase testID="DragManager_custom_dragOffset" description="Test that your dragProxy is correct when setting a dragOffset." keywords="[DragManager, dragOffset, DragSource]">
+			<body>
+			     <WaitForEffectsToEnd />
+			     <DispatchMouseEvent target="myImage2" type="mouseOver" localX="15" localY="15"  />
+			     <DispatchMouseEvent target="myImage2" type="mouseDown" localX="15" localY="15" buttonDown="true" />
+			     <DispatchMouseEvent target="v1" type="mouseMove" localX="240" localY="180" buttonDown="true"
+						waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseMove" localX="200" localY="160" buttonDown="true"
+						waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				 <DispatchMouseEvent target="v1" type="mouseMove" localX="150" localY="130" buttonDown="true"
+						waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				<AssertPropertyValue target="mx.managers::DragManager.mx_internal:dragProxy" propertyName="x" value="185" />
+				<AssertPropertyValue target="mx.managers::DragManager.mx_internal:dragProxy" propertyName="y" value="39" />
+				<DispatchMouseEvent target="v1" type="mouseUp" localX="150" localY="130" buttonDown="true"
+						waitTarget="myImage2" waitEvent="dragComplete" />
+			</body>
+	    </TestCase>
+	    <TestCase testID="DragManager_custom_defaultDragImageSkin" description="Test that your custom defaultDragImageSkin is correct." keywords="[DragManager, defaultDragImageSkin, DragSource]">
+			<setup>
+			    <WaitForEffectsToEnd />
+			    <ResetComponent target="myImage2" className="mx.controls.Image" waitTarget="myImage2" waitEvent="updateComplete" />
+			    <ResetComponent target="myImage" className="mx.controls.Image" waitTarget="myImage" waitEvent="updateComplete" />
+			    <RunCode code="application.myImage.addEventListener('mouseDown', application.callDrag)" />
+			    <SetProperty target="myImage" propertyName="source" valueExpression="value='../../../../Assets/Images/unknown.jpg'" waitEvent="complete" waitTarget="myImage" />
+			</setup>
+			<body>
+			    <DispatchMouseEvent target="myImage" type="mouseOver" localX="15" localY="15"  />
+			    <DispatchMouseEvent target="myImage" type="mouseDown" localX="15" localY="15" buttonDown="true" />
+			    <DispatchMouseEvent target="v1" type="mouseMove" localX="20" localY="30" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				<DispatchMouseEvent target="v1" type="mouseMove" localX="50" localY="60" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				<DispatchMouseEvent target="v1" type="mouseMove" localX="100" localY="75" buttonDown="true"
+					waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move" />
+				<WaitForEffectsToEnd />
+				<CompareBitmap target="v1" url="../Halo/baselines/customDragProxy.png" timeout="2500" />
+			    <DispatchMouseEvent target="v1" type="mouseUp" localX="100" localY="75" buttonDown="true"
+					waitTarget="myImage" waitEvent="dragComplete" />
+		</body>
+	    </TestCase>
+	</testCases>
+</UnitTester>



Mime
View raw message