incubator-flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From p...@apache.org
Subject svn commit: r1369998 [4/9] - in /incubator/flex/trunk/mustella/tests/States: ./ CurrentSyntax/ CurrentSyntax/Clear/ CurrentSyntax/Dot/ CurrentSyntax/Events/ CurrentSyntax/ExcludeFrom/ CurrentSyntax/IncludeIn/ CurrentSyntax/IncludeIn/baselines/ CurrentS...
Date Mon, 06 Aug 2012 20:42:49 GMT
Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PigletCareBox.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PigletCareBox.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PigletCareBox.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PigletCareBox.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,26 @@
+<?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.
+
+-->
+<mx:Box
+    xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"
+    label="Piglet Care" width="100%" height="100%">
+
+<mx:Text text="Piglet Care" />
+
+</mx:Box>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PuppyCareBox.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PuppyCareBox.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PuppyCareBox.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalBoxes/PuppyCareBox.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,26 @@
+<?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.
+
+-->
+<mx:Box
+    xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"
+    label="Puppy Care" width="100%" height="100%">
+
+<mx:Text text="Puppy Care" />
+
+</mx:Box>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalCareApp.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalCareApp.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalCareApp.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/AnimalCareApp.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,86 @@
+<?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.
+
+-->
+<mx:VBox width="100%" height="100%"
+    xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"
+    xmlns:boxes="AnimalBoxes.*" >
+    
+    <fx:Script>
+    <![CDATA[
+        import mx.events.ItemClickEvent;
+        import mx.events.StateChangeEvent;
+
+        private function changeState(event:ItemClickEvent):void{
+            currentState = event.currentTarget.selectedValue;
+        }
+
+        // Any test case could start out in any state, depending on how the
+        // previous test failed.  Therefore, we cannot switch to a state and
+        // then wait, since we may already be in that state.
+        public function doManualResetState():void{
+            if(currentState == "CatState"){
+                dispatchEvent(new Event("manualResetStateComplete"));
+            }else{
+                addEventListener("currentStateChange", handleCurrentStateChange);
+                currentState = "CatState";   
+            }
+        }
+        
+        private function handleCurrentStateChange(e:StateChangeEvent):void{
+            dispatchEvent(new Event("manualResetStateComplete"));
+        }
+
+    ]]>
+    </fx:Script>
+    
+    <mx:states>
+        <mx:State name="CatState" />
+        <mx:State name="DogState" />
+        <mx:State name="CattleState" />
+        <mx:State name="PigState" />
+    </mx:states>
+
+    <mx:TabNavigator id="tnMain" width="100%" height="100%">
+        <mx:Box id="bxContents" label="Main">
+            <mx:Text text="Select the animal you'd like information on:" />
+            <mx:RadioButtonGroup id="rbgAnimals" itemClick="changeState(event)" />
+            <mx:RadioButton id="rbCats" groupName="rbgAnimals" label="Cats" value="CatState" selected="true" />
+            <mx:RadioButton id="rbDogs" groupName="rbgAnimals" label="Dogs" value="DogState" />
+            <mx:RadioButton id="rbCattle" groupName="rbgAnimals" label="Cattle" value="CattleState" />
+            <mx:RadioButton id="rbPigs" groupName="rbgAnimals" label="Pigs" value="PigState" />
+        </mx:Box>
+
+        <boxes:CatCareBox    id="bxCatCare"    includeIn="CatState" />
+        <boxes:KittenCareBox id="bxKittenCare" includeIn="CatState" />
+        <boxes:CatBreedBox   id="bxCatBreeds"  includeIn="CatState" />
+
+        <boxes:DogCareBox   id="bxDogCare"   includeIn="DogState" />
+        <boxes:PuppyCareBox id="bxPuppyCare" includeIn="DogState" />
+        <boxes:DogBreedBox  id="bxDogBreeds" includeIn="DogState" />
+
+        <boxes:CattleCareBox  id="bxCattleCare"   includeIn="CattleState" />
+        <boxes:CalfCareBox    id="bxCalfCare"     includeIn="CattleState" />
+        <boxes:CattleBreedBox id="bxCattleBreeds" includeIn="CattleState" />
+
+        <boxes:PigCareBox    id="bxPigCare"    includeIn="PigState" />
+        <boxes:PigletCareBox id="bxPigletCare" includeIn="PigState" />
+        <boxes:PigBreedBox   id="bxPigBreeds"  includeIn="PigState" />
+    </mx:TabNavigator>
+
+</mx:VBox>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/TabNavApp.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/TabNavApp.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/TabNavApp.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/SWFs/TabNavApp.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,26 @@
+<?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.
+
+-->
+<mx:Application width="100%" height="100%"
+xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"
+xmlns:local="*" >
+
+    <local:AnimalCareApp id="appAnimalCare" />
+
+</mx:Application>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/tests/states_tabnav.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/tests/states_tabnav.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/tests/states_tabnav.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/TabNavApp/tests/states_tabnav.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,168 @@
+<?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="States/CurrentSyntax/Integration/TabNavApp/tests/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="TabNavApp.mxml">
+
+	<!-- this set of lines form a template that must be in each unit test -->
+	<mx:Script>
+	<![CDATA[
+	public static function init(o:DisplayObject):void
+	{
+	}					
+	]]>
+	</mx:Script>
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>	
+	<!-- end of set of lines that must be in each unit test -->
+
+	<mx:Script>
+	<![CDATA[
+        import mx.controls.Button;
+        import mx.controls.TabBar;
+        import mx.core.Application;
+
+        use namespace mx_internal;
+
+        // A tab
+        public var mainTab:Button;
+        public var aTab:Button;
+	]]>
+	</mx:Script>
+
+	<testCases>
+
+<!--
+================================================================================
+DataGrid: Covered in regular tests.
+================================================================================
+-->
+
+
+<!--
+================================================================================
+ContentHolder
+================================================================================
+-->
+<!--
+<TestCase testID="" keywords="[States,includeIn]" description="">
+-->
+
+<!--
+================================================================================
+Graphics tag
+================================================================================
+
+================================================================================
+TabNavigator
+Every setup state goes to the CatState state, selects the second tab  w/o a wait,
+and then selects the first tab with a wait.
+================================================================================
+-->
+<!-- Selecting states on the main tab causes state changes which add/remove tabs. -->
+<TestCase testID="mainpage_1" keywords="[States,Integration]" description="Selecting the Dogs radio button switches to the dog UI." >
+    <setup>
+        <ResetComponent target="appAnimalCare" className="AnimalCareApp" waitEvent="updateComplete" />
+    </setup>
+    <body>
+        <DispatchMouseClickEvent target="appAnimalCare.rbDogs" localX="7" localY="10" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(0).label" value="Main" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(1).label" value="Dog Care" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(2).label" value="Puppy Care" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(3).label" value="Dog Breeds" />
+    </body>
+</TestCase>
+
+<TestCase testID="mainpage_2" keywords="[States,Integration]" description="Selecting the Cattle radio button switches to the cattle UI." >
+    <setup>
+        <ResetComponent target="appAnimalCare" className="AnimalCareApp" waitEvent="updateComplete" />
+    </setup>
+    <body>
+        <DispatchMouseClickEvent target="appAnimalCare.rbCattle" localX="7" localY="10" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(0).label" value="Main" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(1).label" value="Cattle Care" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(2).label" value="Calf Care" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(3).label" value="Cattle Breeds" />
+    </body>
+</TestCase>
+
+<TestCase testID="mainpage_3" keywords="[States,Integration]" description="Selecting the Pigs radio button switches to the pigs UI." >
+    <setup>
+        <ResetComponent target="appAnimalCare" className="AnimalCareApp" waitEvent="updateComplete" />
+    </setup>
+    <body>
+        <DispatchMouseClickEvent target="appAnimalCare.rbPigs" localX="7" localY="10" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(0).label" value="Main" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(1).label" value="Pig Care" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(2).label" value="Piglet Care" />
+        <AssertMethodValue method="value=application.appAnimalCare.tnMain.getTabAt(3).label" value="Pig Breeds" />
+    </body>
+</TestCase>
+
+<!-- Selecting states on one of the other tabs (in a custom MXML control) to add/remove items from a data provider. -->
+<TestCase testID="pigpage_4" keywords="[States,Integration]" description="Selecting all pigs shows all pigs in the list." >
+    <setup>
+        <ResetComponent target="appAnimalCare" className="AnimalCareApp" waitEvent="updateComplete" />
+    </setup>
+    <body>
+        <DispatchMouseClickEvent target="appAnimalCare.rbPigs" localX="7" localY="10" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <RunCode code="aTab = application.appAnimalCare.tnMain.getTabAt(3)" />
+        <DispatchMouseClickEvent target="script:aTab" localX="5" localY="5" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).rbAllPigs" propertyName="selected" value="true" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.0.0.data" propertyName="breed" value="American Landrace" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.1.0.data" propertyName="breed" value="American Yorkshire" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.2.0.data" propertyName="breed" value="Duroc" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.3.0.data" propertyName="breed" value="Angeln Saddleback" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.4.0.data" propertyName="breed" value="Bentheim Black Pied" />
+    </body>
+</TestCase>
+
+<TestCase testID="pigpage_5" keywords="[States,Integration]" description="Selecting American pigs shows American pigs in the list." >
+    <setup>
+        <ResetComponent target="appAnimalCare" className="AnimalCareApp" waitEvent="updateComplete" />
+    </setup>
+    <body>
+        <DispatchMouseClickEvent target="appAnimalCare.rbPigs" localX="7" localY="10" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <RunCode code="aTab = application.appAnimalCare.tnMain.getTabAt(3)" />
+        <DispatchMouseClickEvent target="script:aTab" localX="5" localY="5" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <DispatchMouseClickEvent target="appAnimalCare.tnMain.getChildAt(3).rbAmericanPigs" localX="7" localY="10" waitEvent="updateComplete" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.0.0.data" propertyName="breed" value="American Landrace" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.1.0.data" propertyName="breed" value="American Yorkshire" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.2.0.data" propertyName="breed" value="Duroc" />
+    </body>
+</TestCase>
+
+<TestCase testID="pigpage_6" keywords="[States,Integration]" description="Selecting German pigs shows German pigs in the list." >
+    <setup>
+        <ResetComponent target="appAnimalCare" className="AnimalCareApp" waitEvent="updateComplete" />
+    </setup>
+    <body>
+        <DispatchMouseClickEvent target="appAnimalCare.rbPigs" localX="7" localY="10" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <RunCode code="aTab = application.appAnimalCare.tnMain.getTabAt(3)" />
+        <DispatchMouseClickEvent target="script:aTab" localX="5" localY="5" waitTarget="appAnimalCare.tnMain" waitEvent="updateComplete" />
+        <DispatchMouseClickEvent target="appAnimalCare.tnMain.getChildAt(3).rbGermanPigs" localX="7" localY="10" waitEvent="updateComplete" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.0.0.data" propertyName="breed" value="Angeln Saddleback" />
+        <AssertPropertyValue target="appAnimalCare.tnMain.getChildAt(3).listPigs.mx_internal:rendererArray.1.0.data" propertyName="breed" value="Bentheim Black Pied" />
+    </body>
+</TestCase>
+
+	</testCases>
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_box.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_box.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_box.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_box.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,137 @@
+<?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="States/CurrentSyntax/Integration/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="statesIntegrationApp_Box.mxml">
+
+	<!-- this set of lines form a template that must be in each unit test -->
+	<mx:Script>
+	<![CDATA[
+	public static function init(o:DisplayObject):void
+	{
+	}					
+	]]>
+	</mx:Script>
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>	
+	<!-- end of set of lines that must be in each unit test -->
+
+	<mx:Script>
+	<![CDATA[
+        import mx.core.Application;
+	]]>
+	</mx:Script>
+
+	<testCases>
+
+<TestCase testID="integration_box01_test1" keywords="[States]" description="A button is includedIn only in state1. State is state1" >
+    <setup>
+        <RunCode code="application.goToState1()" waitEvent="inState1" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box01" propertyName="numChildren" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box02_test1" keywords="[States]" description="A button is includedIn only in state2. State is state1" >
+    <setup>
+        <RunCode code="application.goToState1()" waitEvent="inState1" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box02" propertyName="numChildren" value="0" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box03_test1" keywords="[States]" description="A button is excludedFrom only in state1. State is state1" >
+    <setup>
+        <RunCode code="application.goToState1()" waitEvent="inState1" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box03" propertyName="numChildren" value="0" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box04_test1" keywords="[States]" description="A button is excludedFrom only in state2. State is state1" >
+    <setup>
+        <RunCode code="application.goToState1()" waitEvent="inState1" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box04" propertyName="numChildren" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box05_test1" keywords="[States]" description="A button is excludedFrom state2 and another is includedIn state2. State is state1" >
+    <setup>
+        <RunCode code="application.goToState1()" waitEvent="inState1" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box05" propertyName="numChildren" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box01_test2" keywords="[States]" description="A button is includedIn only in state1. State is state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box01" propertyName="numChildren" value="0" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box02_test2" keywords="[States]" description="A button is includedIn only in state2. State is state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box02" propertyName="numChildren" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box03_test2" keywords="[States]" description="A button is excludedFrom only in state1. State is state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box03" propertyName="numChildren" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box04_test2" keywords="[States]" description="A button is excludedFrom only in state2. State is state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box04" propertyName="numChildren" value="0" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_box05_test2" keywords="[States]" description="A button is excludedFrom state2 and another is includedIn state2. State is state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertPropertyValue target="box05" propertyName="numChildren" value="1" />
+    </body>
+</TestCase>
+
+
+	</testCases>                	     
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_combobox.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_combobox.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_combobox.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_combobox.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,537 @@
+<?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="States/CurrentSyntax/Integration/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="statesIntegrationApp_ComboBox.mxml">
+
+	<!-- this set of lines form a template that must be in each unit test -->
+	<mx:Script>
+	<![CDATA[
+	public static function init(o:DisplayObject):void
+	{
+	}					
+	]]>
+	</mx:Script>
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>	
+	<!-- end of set of lines that must be in each unit test -->
+
+	<mx:Script>
+	<![CDATA[
+        import mx.core.Application;
+        import mx.collections.ArrayCollection;
+        import mx.controls.Label;
+	]]>
+	</mx:Script>
+
+	<testCases>
+
+<!--
+================================================================================
+All of these tests are in state1, testing the default when the app. starts up.
+Do not do a state2 test before these! 
+================================================================================
+-->
+
+<TestCase testID="integration_combobox_1a" keywords="[States]" description="String, state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx1.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx1" propertyName="dataProvider" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_2a" keywords="[States]" description="String, state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx2.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx2" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_3a" keywords="[States]" description="2 strings, state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx3.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx3" propertyName="dataProvider" value="string in state1,another string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_4a" keywords="[States]" description="2 strings, state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx4.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx4" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_5a" keywords="[States]" description="2 strings, first in state1, second in state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx5.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx5" propertyName="dataProvider" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_6a" keywords="[States]" description="2 strings, first in state2, second in state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx6.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx6" propertyName="dataProvider" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_7a" keywords="[States]" description="Array in state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx7.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx7" propertyName="dataProvider" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_8a" keywords="[States]" description="Array in state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx8.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx8" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_9a" keywords="[States]" description="2 arrays, state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx9.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx9" propertyName="dataProvider" value="array in state1,another array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_10a" keywords="[States]" description="2 arrays, state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx10.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx10" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_11a" keywords="[States]" description="2 arrays, first in state1, second in state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx11.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx11" propertyName="dataProvider" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_12a" keywords="[States]" description="2 arrays, first in state2, second in state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx12.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx12" propertyName="dataProvider" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_13a" keywords="[States]" description="Array and a string in state1, array first" >
+    <body>
+        <AssertMethodValue method="value=application.cbx13.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx13" propertyName="dataProvider" value="array in state1,string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_14a" keywords="[States]" description="Array and a string in state1, string first" >
+    <body>
+        <AssertMethodValue method="value=application.cbx14.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx14" propertyName="dataProvider" value="string in state1,array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_15a" keywords="[States]" description="Array and a string in state2, array first" >
+    <body>
+        <AssertMethodValue method="value=application.cbx15.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx15" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_16a" keywords="[States]" description="Array and a string in state2, string first" >
+    <body>
+        <AssertMethodValue method="value=application.cbx16.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx16" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_17a" keywords="[States]" description="Array and a string, array first in state1, string second in state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx17.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx17" propertyName="dataProvider" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_18a" keywords="[States]" description="Array and a string, array first in state2, string second in state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx18.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx18" propertyName="dataProvider" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_19a" keywords="[States]" description="Array and a string, string first in state2, array second in state1" >
+    <body>
+        <AssertMethodValue method="value=application.cbx19.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx19" propertyName="dataProvider" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_20a" keywords="[States]" description="Array and a string, string first in state1, array second in state2" >
+    <body>
+        <AssertMethodValue method="value=application.cbx20.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx20" propertyName="dataProvider" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_21a" keywords="[States]" description="Array and a string, array first in state1, string always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx21.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx21" propertyName="dataProvider" value="array in state1,string always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_22a" keywords="[States]" description="Array and a string, array first in state2, string always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx22.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx22" propertyName="dataProvider" value="string always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_23a" keywords="[States]" description="Array and a string, array second in state1, string always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx23.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx23" propertyName="dataProvider" value="string always present,array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_24a" keywords="[States]" description="Array and a string, array second in state2, string always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx24.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx24" propertyName="dataProvider" value="string always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_25a" keywords="[States]" description="Array and a string, string first in state1, array always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx25.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx25" propertyName="dataProvider" value="string in state1,array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_26a" keywords="[States]" description="Array and a string, string first in state2, array always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx26.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx26" propertyName="dataProvider" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_27a" keywords="[States]" description="Array and a string, string second in state1, array always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx27.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx27" propertyName="dataProvider" value="array always present,string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_28a" keywords="[States]" description="Array and a string, string second in state2, array always present" >
+    <body>
+        <AssertMethodValue method="value=application.cbx28.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx28" propertyName="dataProvider" value="array always present" />
+    </body>
+</TestCase>
+
+<!--
+================================================================================
+All of these tests are in state2. 
+================================================================================
+-->
+
+<TestCase testID="integration_combobox_1b" keywords="[States]" description="String, state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx1.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx1" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_2b" keywords="[States]" description="String, state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx2.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx2" propertyName="dataProvider" value="string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_3b" keywords="[States]" description="2 strings, state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx3.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx3" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_4b" keywords="[States]" description="2 strings, state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx4.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx4" propertyName="dataProvider" value="string in state2,another string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_5b" keywords="[States]" description="2 strings, first in state1, second in state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx5.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx5" propertyName="dataProvider" value="string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_6b" keywords="[States]" description="2 strings, first in state2, second in state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx6.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx6" propertyName="dataProvider" value="string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_7b" keywords="[States]" description="Array in state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx7.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx7" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_8b" keywords="[States]" description="Array in state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx8.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx8" propertyName="dataProvider" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_9b" keywords="[States]" description="2 arrays, state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx9.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx9" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_10b" keywords="[States]" description="2 arrays, state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx10.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx10" propertyName="dataProvider" value="array in state2,another array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_11b" keywords="[States]" description="2 arrays, first in state1, second in state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx11.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx11" propertyName="dataProvider" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_12b" keywords="[States]" description="2 arrays, first in state2, second in state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx12.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx12" propertyName="dataProvider" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_13b" keywords="[States]" description="Array and a string in state1, array first" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx13.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx13" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_14b" keywords="[States]" description="Array and a string in state1, string first" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx14.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx14" propertyName="dataProvider" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_15b" keywords="[States]" description="Array and a string in state2, array first" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx15.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx15" propertyName="dataProvider" value="array in state2,string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_16b" keywords="[States]" description="Array and a string in state2, string first" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx16.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx16" propertyName="dataProvider" value="string in state2,array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_17b" keywords="[States]" description="Array and a string, array first in state1, string second in state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx17.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx17" propertyName="dataProvider" value="string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_18b" keywords="[States]" description="Array and a string, array first in state2, string second in state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx18.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx18" propertyName="dataProvider" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_19b" keywords="[States]" description="Array and a string, string first in state2, array second in state1" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx19.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx19" propertyName="dataProvider" value="string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_20b" keywords="[States]" description="Array and a string, string first in state1, array second in state2" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx20.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx20" propertyName="dataProvider" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_21b" keywords="[States]" description="Array and a string, array first in state1, string always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx21.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx21" propertyName="dataProvider" value="string always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_22b" keywords="[States]" description="Array and a string, array first in state2, string always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx22.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx22" propertyName="dataProvider" value="array in state2,string always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_23b" keywords="[States]" description="Array and a string, array second in state1, string always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx23.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx23" propertyName="dataProvider" value="string always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_24b" keywords="[States]" description="Array and a string, array second in state2, string always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx24.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx24" propertyName="dataProvider" value="string always present,array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_25b" keywords="[States]" description="Array and a string, string first in state1, array always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx25.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx25" propertyName="dataProvider" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_26b" keywords="[States]" description="Array and a string, string first in state2, array always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx26.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx26" propertyName="dataProvider" value="string in state2,array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_27b" keywords="[States]" description="Array and a string, string second in state1, array always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx27.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx27" propertyName="dataProvider" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_combobox_28b" keywords="[States]" description="Array and a string, string second in state2, array always present" >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.cbx28.dataProvider is ArrayCollection" value="true" />
+        <AssertPropertyValue target="cbx28" propertyName="dataProvider" value="array always present,string in state2" />
+    </body>
+</TestCase>
+
+	</testCases>                	     
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_customProperties.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_customProperties.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_customProperties.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_customProperties.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,96 @@
+<?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="States/CurrentSyntax/Integration/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="CustomPropertyApp.mxml">
+
+	<!-- this set of lines form a template that must be in each unit test -->
+	<mx:Script>
+	<![CDATA[
+	public static function init(o:DisplayObject):void
+	{
+	}					
+	]]>
+	</mx:Script>
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>	
+	<!-- end of set of lines that must be in each unit test -->
+
+	<mx:Script>
+	<![CDATA[
+
+	]]>
+	</mx:Script>
+
+	<testCases>
+
+<!--
+================================================================================
+ContentHolder
+================================================================================
+-->
+<!-- Selecting states on the main tab causes state changes which add/remove tabs. -->
+<TestCase testID="customProperty_1" keywords="[States,Integration]" description="Able to define an 'includeIn' property for a custom control." >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="State1" waitTarget="{application}" waitEvent="currentStateChange" />
+        <AssertPropertyValue target="btn1" propertyName="includeIn" value="a,b,c" />
+    </body>
+</TestCase>
+
+<TestCase testID="customProperty_2" keywords="[States,Integration]" description="If there is an 'includeIn' property for a custom control, it does not interfere with the the 'includeIn' property for States." >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="State1" waitTarget="{application}" waitEvent="currentStateChange" />
+        <AssertPropertyValue target="btn2" propertyName="parent" value="CustomPropertyApp0" />
+        <SetProperty target="{application}" propertyName="currentState" value="State2" waitTarget="{application}" waitEvent="currentStateChange" />
+        <AssertPropertyValue target="btn2" propertyName="parent" value="null" />
+    </body>
+</TestCase>
+
+<TestCase testID="customProperty_3" keywords="[States,Integration]" description="Able to define an 'excludeFrom' property for a custom control." >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="State2" waitTarget="{application}" waitEvent="currentStateChange" />
+        <AssertPropertyValue target="btn3" propertyName="excludeFrom" value="g,h,i" />
+    </body>
+</TestCase>
+
+<TestCase testID="customProperty_4" keywords="[States,Integration]" description="If there is an 'excludeFrom' property for a custom control, it does not interfere with the the 'excludeFrom' property for States." >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="State2" waitTarget="{application}" waitEvent="currentStateChange" />
+        <AssertPropertyValue target="btn4" propertyName="parent" value="CustomPropertyApp0" />
+        <SetProperty target="{application}" propertyName="currentState" value="State1" waitTarget="{application}" waitEvent="currentStateChange" />
+        <AssertPropertyValue target="btn4" propertyName="parent" value="null" />
+    </body>
+</TestCase>
+
+	</testCases>
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_deferredinst.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_deferredinst.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_deferredinst.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_deferredinst.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,55 @@
+<?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="States/CurrentSyntax/Integration/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="statesApp_deferredInst.mxml">
+
+	<!-- this set of lines form a template that must be in each unit test -->
+	<mx:Script>
+	<![CDATA[
+	public static function init(o:DisplayObject):void
+	{
+	}					
+	]]>
+	</mx:Script>
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>	
+	<!-- end of set of lines that must be in each unit test -->
+
+	<mx:Script>
+	<![CDATA[
+        import mx.core.*;
+	]]>
+	</mx:Script>
+
+	<testCases>
+
+<TestCase testID="navigatorcontent_test1" keywords="[States]" description="Use in a NavigatorContent in a TabNavigator.  This was a bug that came up." >
+    <setup>
+        <RunCode code="FlexGlobals.topLevelApplication.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value = FlexGlobals.topLevelApplication.elementInSkinnableContainer(FlexGlobals.topLevelApplication.page1, 'btn1')" value="true" />
+    </body>
+</TestCase>
+
+	</testCases>                	     
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_graphics.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_graphics.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_graphics.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_graphics.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,91 @@
+<?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="States/CurrentSyntax/Integration/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="graphicsApp.mxml">
+
+	<!-- this set of lines form a template that must be in each unit test -->
+	<mx:Script>
+	<![CDATA[
+	public static function init(o:DisplayObject):void
+	{
+	}					
+	]]>
+	</mx:Script>
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>	
+	<!-- end of set of lines that must be in each unit test -->
+
+	<mx:Script>
+	<![CDATA[
+
+	]]>
+	</mx:Script>
+
+	<testCases>
+
+<!--
+================================================================================
+Be sure states work with the Graphics code.
+================================================================================
+-->
+<TestCase testID="graphics_1" keywords="[States,Integration]" description="Make the fill property of a Rec stateful, state1. (Green should be in the middle.)" >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="state1" waitTarget="{application}" waitEvent="currentStateChange" />
+        <CompareBitmap target="group1" url="../Integration/Baselines/$testID.png" />
+    </body>
+</TestCase>
+
+<TestCase testID="graphics_2" keywords="[States,Integration]" description="Make the fill property of a Rec stateful, state2. (Green should be on the outside.)" >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="state2" waitTarget="{application}" waitEvent="currentStateChange" />
+        <CompareBitmap target="group1" url="../Integration/Baselines/$testID.png" />
+    </body>
+</TestCase>
+
+<TestCase testID="graphics_3" keywords="[States,Integration]" description="Make the presence of a GradientEntry item in a LinearGradient array stateful, state1. (Green should be in the middle.)" >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="state1" waitTarget="{application}" waitEvent="currentStateChange" />
+        <CompareBitmap target="group2" url="../Integration/Baselines/$testID.png" />
+    </body>
+</TestCase>
+
+<TestCase testID="graphics_4" keywords="[States,Integration]" description="Make the presence of a GradientEntry item in a LinearGradient array stateful, state1. (Red should be in the middle.)" >
+    <setup>
+        <RunCode code="application.doManualReset()" waitEvent="manualResetComplete" />
+    </setup>
+    <body>
+        <SetProperty target="{application}" propertyName="currentState" value="state2" waitTarget="{application}" waitEvent="currentStateChange" />
+        <CompareBitmap target="group2" url="../Integration/Baselines/$testID.png" />
+    </body>
+</TestCase>
+
+	</testCases>
+</UnitTester>

Added: incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_group.mxml
URL: http://svn.apache.org/viewvc/incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_group.mxml?rev=1369998&view=auto
==============================================================================
--- incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_group.mxml (added)
+++ incubator/flex/trunk/mustella/tests/States/CurrentSyntax/Integration/states_group.mxml Mon Aug  6 20:42:44 2012
@@ -0,0 +1,445 @@
+<?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="States/CurrentSyntax/Integration/"  xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="statesIntegrationApp_Group.mxml">
+
+	<!-- this set of lines form a template that must be in each unit test -->
+	<mx:Script>
+	<![CDATA[
+	public static function init(o:DisplayObject):void
+	{
+	}					
+	]]>
+	</mx:Script>
+	<mx:Metadata>
+	<![CDATA[
+		[Mixin]
+	]]>
+	</mx:Metadata>	
+	<!-- end of set of lines that must be in each unit test -->
+
+	<mx:Script>
+	<![CDATA[
+        import mx.core.Application;
+        import mx.collections.ArrayCollection;
+        import mx.controls.Label;
+        
+        use namespace mx_internal;
+	]]>
+	</mx:Script>
+
+	<testCases>
+
+<!--
+================================================================================
+All of these tests are in state1, testing the default when the app. starts up.
+Do not do a state2 test before these! 
+================================================================================
+-->
+
+<TestCase testID="integration_group_1a" keywords="[States]" description="String in a ContentHolder, state1." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g1.getMXMLContent()[0]).text" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_2a" keywords="[States]" description="String in a ContentHolder, state2." >
+    <body>
+        <AssertMethodValue method="value=application.g2.getMXMLContent() is Array" value="true" />
+        <AssertMethodValue method="value=application.g2.getMXMLContent()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_3a" keywords="[States]" description="2 strings in a ContentHolder, state1." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g3.getMXMLContent()[0]).text" value="string in state1" />
+        <AssertMethodValue method="value=Label(application.g3.getMXMLContent()[1]).text" value="another string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_4a" keywords="[States]" description="2 strings in a ContentHolder, state2." >
+    <body>
+        <AssertMethodValue method="value=application.g4.getMXMLContent() is Array" value="true" />
+        <AssertMethodValue method="value=application.g4.getMXMLContent()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_5a" keywords="[States]" description="2 strings in a ContentHolder, different states, state1 first." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g5.getMXMLContent()[0]).text" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_6a" keywords="[States]" description="2 strings in a ContentHolder, different states, state2 first." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g6.getMXMLContent()[0]).text" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_7a" keywords="[States]" description="Array in a ContentHolder, state1." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g7.getMXMLContent()[0]).text" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_8a" keywords="[States]" description="Array in a ContentHolder, state2." >
+    <body>
+        <AssertMethodValue method="value=application.g8.getMXMLContent()" value="null" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_9a" keywords="[States]" description="2 arrays in a ContentHolder, state1." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g9.dataProvider).toString()" value="array in state1,another array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_10a" keywords="[States]" description="2 arrays in a ContentHolder, state2." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g10.dataProvider).toString()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_11a" keywords="[States]" description="2 arrays in a ContentHolder, different states, state1 first." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g11.dataProvider).toString()" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_12a" keywords="[States]" description="2 arrays in a ContentHolder, different states, state2 first." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g12.dataProvider).toString()" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_13a" keywords="[States]" description="An array and a string, array first, state1." >
+    <body>
+        <AssertMethodValue method="value=application.g13.dataProvider.getItemAt(0)" value="array in state1" />
+        <AssertMethodValue method="value=Label(application.g13.dataProvider.getItemAt(1)).text" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_14a" keywords="[States]" description="An array and a string, array second, state1." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g14.dataProvider.getItemAt(0)).text" value="string in state1" />
+        <AssertMethodValue method="value=application.g14.dataProvider.getItemAt(1)" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_15a" keywords="[States]" description="An array and a string, array first, state2." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g15.dataProvider).toString()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_16a" keywords="[States]" description="An array and a string, array second, state2." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g16.dataProvider).toString()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_17a" keywords="[States]" description="An array and a string, array first in state1, string second in state2." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g17.dataProvider).toString()" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_18a" keywords="[States]" description="An array and a string, array first in state2, string second in state1." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g18.dataProvider.getItemAt(0)).text" value="string in state1" />
+        <AssertMethodValue method="value=application.g18.dataProvider.length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_19a" keywords="[States]" description="An array and a string, string first in state2, array second in state1." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g19.dataProvider).toString()" value="array in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_20a" keywords="[States]" description="An array and a string, string first in state1, array second in state2." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g20.dataProvider.getItemAt(0)).text" value="string in state1" />
+        <AssertMethodValue method="value=application.g20.dataProvider.length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_21a" keywords="[States]" description="An array and a string, string first in state1, array always present." >
+    <body>
+        <AssertMethodValue method="value=Label(application.g21.dataProvider.getItemAt(0)).text" value="string in state1" />
+        <AssertMethodValue method="value=application.g21.dataProvider.getItemAt(1)" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_22a" keywords="[States]" description="An array and a string, string first in state2, array always present." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g22.dataProvider).toString()" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_23a" keywords="[States]" description="An array and a string, string second in state1, array always present." >
+    <body>
+        <AssertMethodValue method="value=application.g23.dataProvider.getItemAt(0)" value="array always present" />
+        <AssertMethodValue method="value=Label(application.g23.dataProvider.getItemAt(1)).text" value="string in state1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_24a" keywords="[States]" description="An array and a string, string second in state2, array always present." >
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g24.dataProvider).toString()" value="array always present" />
+    </body>
+</TestCase>
+
+<!--
+================================================================================
+All of these tests are in state2. 
+================================================================================
+-->
+
+<TestCase testID="integration_group_1b" keywords="[States]" description="String in a ContentHolder, state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.g1.getMXMLContent() is Array" value="true" />
+        <AssertMethodValue method="value=application.g1.getMXMLContent()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_2b" keywords="[States]" description="String in a ContentHolder, state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g2.getMXMLContent()[0]).text" value="string in state2" />
+        <AssertMethodValue method="value=application.g2.getMXMLContent().length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_3b" keywords="[States]" description="2 strings in a ContentHolder, state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.g3.getMXMLContent() is Array" value="true" />
+        <AssertMethodValue method="value=application.g3.getMXMLContent()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_4b" keywords="[States]" description="2 strings in a ContentHolder, state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g4.getMXMLContent()[0]).text" value="string in state2" />
+        <AssertMethodValue method="value=Label(application.g4.getMXMLContent()[1]).text" value="another string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_5b" keywords="[States]" description="2 strings in a ContentHolder, different states, state1 first." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g5.getMXMLContent()[0]).text" value="string in state2" />
+        <AssertMethodValue method="value=application.g5.getMXMLContent().length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_6b" keywords="[States]" description="2 strings in a ContentHolder, different states, state2 first." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g6.getMXMLContent()[0]).text" value="string in state2" />
+        <AssertMethodValue method="value=application.g6.getMXMLContent().length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_7b" keywords="[States]" description="Array in a ContentHolder, state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.g7.getMXMLContent() is Array" value="true" />
+        <AssertMethodValue method="value=application.g7.getMXMLContent()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_8b" keywords="[States]" description="Array in a ContentHolder, state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g8.getMXMLContent()[0]).text" value="array in state2" />
+        <AssertMethodValue method="value=application.g8.getMXMLContent().length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_9b" keywords="[States]" description="2 arrays in a ContentHolder, state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g9.dataProvider).toString()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_10b" keywords="[States]" description="2 arrays in a ContentHolder, state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g10.dataProvider).toString()" value="array in state2,another array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_11b" keywords="[States]" description="2 arrays in a ContentHolder, different states, state1 first." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g11.dataProvider).toString()" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_12b" keywords="[States]" description="2 arrays in a ContentHolder, different states, state2 first." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g12.dataProvider).toString()" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_13b" keywords="[States]" description="An array and a string, array first, state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g13.dataProvider).toString()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_14b" keywords="[States]" description="An array and a string, array second, state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g14.dataProvider).toString()" value="" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_15b" keywords="[States]" description="An array and a string, array first, state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.g15.dataProvider.getItemAt(0)" value="array in state2" />
+        <AssertMethodValue method="value=Label(application.g15.dataProvider.getItemAt(1)).text" value="string in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_16b" keywords="[States]" description="An array and a string, array second, state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g16.dataProvider.getItemAt(0)).text" value="string in state2" />
+        <AssertMethodValue method="value=application.g16.dataProvider.getItemAt(1)" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_17b" keywords="[States]" description="An array and a string, array first in state1, string second in state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g17.dataProvider.getItemAt(0)).text" value="string in state2" />
+        <AssertMethodValue method="value=application.g17.dataProvider.length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_18b" keywords="[States]" description="An array and a string, array first in state2, string second in state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g18.dataProvider).toString()" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_19b" keywords="[States]" description="An array and a string, string first in state2, array second in state1." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g19.dataProvider.getItemAt(0)).text" value="string in state2" />
+        <AssertMethodValue method="value=application.g19.dataProvider.length" value="1" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_20b" keywords="[States]" description="An array and a string, string first in state1, array second in state2." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g20.dataProvider).toString()" value="array in state2" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_21b" keywords="[States]" description="An array and a string, string first in state1, array always present." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g21.dataProvider).toString()" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_22b" keywords="[States]" description="An array and a string, string first in state2, array always present." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=Label(application.g22.dataProvider.getItemAt(0)).text" value="string in state2" />
+        <AssertMethodValue method="value=application.g22.dataProvider.getItemAt(1)" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_23b" keywords="[States]" description="An array and a string, string second in state1, array always present." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=ArrayCollection(application.g23.dataProvider).toString()" value="array always present" />
+    </body>
+</TestCase>
+
+<TestCase testID="integration_group_24b" keywords="[States]" description="An array and a string, string second in state2, array always present." >
+    <setup>
+        <RunCode code="application.goToState2()" waitEvent="inState2" />
+    </setup>
+    <body>
+        <AssertMethodValue method="value=application.g24.dataProvider.getItemAt(0)" value="array always present" />
+        <AssertMethodValue method="value=Label(application.g24.dataProvider.getItemAt(1)).text" value="string in state2" />
+    </body>
+</TestCase>
+	</testCases>                	     
+</UnitTester>



Mime
View raw message