You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2014/03/02 07:14:32 UTC

[09/12] git commit: [flex-asjs] [refs/heads/develop] - changes required to get basictests to compile and not RTE when launched. Now to get it to actually run some tests

changes required to get basictests to compile and not RTE when launched.  Now to get it to actually run some tests


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/1c4ff6c5
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/1c4ff6c5
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/1c4ff6c5

Branch: refs/heads/develop
Commit: 1c4ff6c545e3101e113c5d6bd9a9df5043a60b08
Parents: b45e0a3
Author: Alex Harui <ah...@apache.org>
Authored: Wed Feb 26 20:12:21 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Sat Mar 1 21:29:49 2014 -0800

----------------------------------------------------------------------
 build.xml                                       |   25 +-
 .../src/org/apache/flex/core/ContainerBase.as   |  220 ++++
 .../src/org/apache/flex/core/ViewBase.as        |  169 +--
 .../flex/html/staticControls/Container.as       |   14 +-
 mustella/tests/basicTests/BasicTests-config.xml |  102 ++
 mustella/tests/basicTests/BasicTests.css        |  170 +++
 mustella/tests/basicTests/BasicTests.mxml       |  211 ++++
 mustella/tests/basicTests/BasicTestsApp.mxml    |   53 +
 mustella/tests/basicTests/basicImage.jpg        |  Bin 0 -> 2939 bytes
 mustella/tests/basicTests/basicLoader.as        |   70 ++
 .../basicTests/dmv/scripts/ADGTestScript.mxml   |  108 ++
 .../dmv/scripts/ChartsTestScript.mxml           |   89 ++
 .../basicTests/dmv/scripts/ODGTestScript.mxml   |   54 +
 .../tests/basicTests/dmv/views/ADGTests.mxml    |  119 ++
 .../tests/basicTests/dmv/views/ChartsTests.mxml |  138 +++
 .../tests/basicTests/dmv/views/DataIntro.as     |   83 ++
 .../tests/basicTests/dmv/views/ODGTests.mxml    |  152 +++
 .../fxg/scripts/FXG2CompileTestScript.mxml      |   51 +
 .../fxg/scripts/FXGCompileTestScript.mxml       |   52 +
 .../basicTests/fxg/views/FXG2CompileTests.mxml  |   24 +
 .../basicTests/fxg/views/FXGCompileTests.mxml   |   24 +
 mustella/tests/basicTests/fxg/views/bg01.fxg    |  399 +++++++
 mustella/tests/basicTests/fxg/views/fxg2.fxg    |  199 ++++
 .../scripts/GraphicsTagsTestScript.mxml         | 1069 ++++++++++++++++++
 .../GraphicTags_Checkin_Ellipse_bevelFilter.png |  Bin 0 -> 3294 bytes
 .../GraphicTags_Checkin_Ellipse_blurFilter.png  |  Bin 0 -> 3286 bytes
 .../GraphicTags_Checkin_Ellipse_height.png      |  Bin 0 -> 1051 bytes
 .../GraphicTags_Checkin_Ellipse_stroke.png      |  Bin 0 -> 1268 bytes
 .../GraphicTags_Checkin_Ellipse_stroke10.png    |  Bin 0 -> 1410 bytes
 ...raphicTags_Checkin_Ellipse_stroke10Alpha.png |  Bin 0 -> 1884 bytes
 ...aphicTags_Checkin_Ellipse_stroke10Purple.png |  Bin 0 -> 1419 bytes
 .../GraphicTags_Checkin_Ellipse_width.png       |  Bin 0 -> 1051 bytes
 .../baselines/GraphicTags_Checkin_Ellipse_x.png |  Bin 0 -> 1025 bytes
 .../baselines/GraphicTags_Checkin_Ellipse_y.png |  Bin 0 -> 1054 bytes
 ...cTags_Checkin_LinearGradRect_bevelFilter.png |  Bin 0 -> 729 bytes
 ...icTags_Checkin_LinearGradRect_blurFilter.png |  Bin 0 -> 2379 bytes
 ...raphicTags_Checkin_LinearGradRect_height.png |  Bin 0 -> 799 bytes
 ...raphicTags_Checkin_LinearGradRect_stroke.png |  Bin 0 -> 750 bytes
 ...phicTags_Checkin_LinearGradRect_stroke10.png |  Bin 0 -> 828 bytes
 ...ags_Checkin_LinearGradRect_stroke10Alpha.png |  Bin 0 -> 1178 bytes
 ...gs_Checkin_LinearGradRect_stroke10Purple.png |  Bin 0 -> 822 bytes
 ...GraphicTags_Checkin_LinearGradRect_width.png |  Bin 0 -> 951 bytes
 .../GraphicTags_Checkin_LinearGradRect_x.png    |  Bin 0 -> 746 bytes
 .../GraphicTags_Checkin_LinearGradRect_y.png    |  Bin 0 -> 732 bytes
 .../GraphicTags_Checkin_Rect_bevelFilter.png    |  Bin 0 -> 852 bytes
 .../GraphicTags_Checkin_Rect_blurFilter.png     |  Bin 0 -> 778 bytes
 .../GraphicTags_Checkin_Rect_height.png         |  Bin 0 -> 550 bytes
 .../GraphicTags_Checkin_Rect_stroke.png         |  Bin 0 -> 565 bytes
 .../GraphicTags_Checkin_Rect_stroke10.png       |  Bin 0 -> 661 bytes
 .../GraphicTags_Checkin_Rect_stroke10Alpha.png  |  Bin 0 -> 664 bytes
 .../GraphicTags_Checkin_Rect_stroke10Purple.png |  Bin 0 -> 664 bytes
 .../GraphicTags_Checkin_Rect_width.png          |  Bin 0 -> 550 bytes
 .../baselines/GraphicTags_Checkin_Rect_x.png    |  Bin 0 -> 569 bytes
 .../baselines/GraphicTags_Checkin_Rect_y.png    |  Bin 0 -> 553 bytes
 ...heckin_RotatedLinearGradRect_bevelFilter.png |  Bin 0 -> 1023 bytes
 ...Checkin_RotatedLinearGradRect_blurFilter.png |  Bin 0 -> 3202 bytes
 ...ags_Checkin_RotatedLinearGradRect_height.png |  Bin 0 -> 1596 bytes
 ...ags_Checkin_RotatedLinearGradRect_stroke.png |  Bin 0 -> 1023 bytes
 ...s_Checkin_RotatedLinearGradRect_stroke10.png |  Bin 0 -> 1096 bytes
 ...ckin_RotatedLinearGradRect_stroke10Alpha.png |  Bin 0 -> 1745 bytes
 ...kin_RotatedLinearGradRect_stroke10Purple.png |  Bin 0 -> 1100 bytes
 ...Tags_Checkin_RotatedLinearGradRect_width.png |  Bin 0 -> 2403 bytes
 ...phicTags_Checkin_RotatedLinearGradRect_x.png |  Bin 0 -> 1016 bytes
 ...phicTags_Checkin_RotatedLinearGradRect_y.png |  Bin 0 -> 1019 bytes
 ...raphicTags_Checkin_RoundRect_bevelFilter.png |  Bin 0 -> 757 bytes
 ...GraphicTags_Checkin_RoundRect_blurFilter.png |  Bin 0 -> 1739 bytes
 .../GraphicTags_Checkin_RoundRect_height.png    |  Bin 0 -> 757 bytes
 .../GraphicTags_Checkin_RoundRect_stroke.png    |  Bin 0 -> 899 bytes
 .../GraphicTags_Checkin_RoundRect_stroke10.png  |  Bin 0 -> 901 bytes
 ...phicTags_Checkin_RoundRect_stroke10Alpha.png |  Bin 0 -> 1114 bytes
 ...hicTags_Checkin_RoundRect_stroke10Purple.png |  Bin 0 -> 909 bytes
 .../GraphicTags_Checkin_RoundRect_width.png     |  Bin 0 -> 757 bytes
 .../GraphicTags_Checkin_RoundRect_x.png         |  Bin 0 -> 753 bytes
 .../GraphicTags_Checkin_RoundRect_y.png         |  Bin 0 -> 757 bytes
 .../graphics/views/GraphicsTagsTests.mxml       |   33 +
 .../graphics/views/comps/EllipseBasic2.mxml     |   34 +
 .../graphics/views/comps/RectBasic3.mxml        |   34 +
 .../graphics/views/comps/TextGraphicBasic1.mxml |   32 +
 .../halo/scripts/AccordionTestScript.mxml       |   73 ++
 .../halo/scripts/AlertTestScript.mxml           |   84 ++
 .../halo/scripts/ButtonTestScript.mxml          |   61 +
 .../halo/scripts/CheckBoxTestScript.mxml        |   60 +
 .../halo/scripts/CollectionTestScript.mxml      |   77 ++
 .../halo/scripts/ColorPickerTestScript.mxml     |   71 ++
 .../halo/scripts/ComboBoxTestScript.mxml        |   69 ++
 .../halo/scripts/DateFieldTestScript.mxml       |   72 ++
 .../halo/scripts/FTETextTestScript.mxml         |  105 ++
 .../halo/scripts/FocusManagerTestScript.mxml    |   73 ++
 .../halo/scripts/ImageTestScript.mxml           |   59 +
 .../halo/scripts/ListAndDataGridTestScript.mxml |   90 ++
 .../halo/scripts/MXItemRendererTestScript.mxml  |   76 ++
 .../halo/scripts/MenuBarTestScript.mxml         |   85 ++
 .../basicTests/halo/scripts/MenuTestScript.mxml |   91 ++
 .../halo/scripts/NumericStepperTestScript.mxml  |   86 ++
 .../halo/scripts/ProgressBarTestScript.mxml     |   78 ++
 .../halo/scripts/RPCDataBindingTestScript.mxml  |   69 ++
 .../halo/scripts/RadioButtonTestScript.mxml     |   69 ++
 .../halo/scripts/SWFLoaderTestScript.mxml       |   58 +
 .../halo/scripts/SliderTestScript.mxml          |   64 ++
 .../halo/scripts/TabNavigatorTestScript.mxml    |   71 ++
 .../halo/scripts/TextAreaTestScript.mxml        |   62 +
 .../halo/scripts/TextInputTestScript.mxml       |   61 +
 .../basicTests/halo/scripts/TextTestScript.mxml |   72 ++
 .../basicTests/halo/scripts/TreeTestScript.mxml |   68 ++
 .../basicTests/halo/views/AccordionTests.mxml   |   50 +
 .../tests/basicTests/halo/views/AlertTests.mxml |   41 +
 .../basicTests/halo/views/ButtonTests.mxml      |   33 +
 .../basicTests/halo/views/CheckBoxTests.mxml    |   33 +
 .../basicTests/halo/views/CollectionTests.mxml  |   51 +
 .../basicTests/halo/views/ColorPickerTests.mxml |   37 +
 .../basicTests/halo/views/ComboBoxTests.mxml    |   39 +
 .../basicTests/halo/views/DateFieldTests.mxml   |   37 +
 .../basicTests/halo/views/FTETextTests.mxml     |   42 +
 .../halo/views/FocusManagerTests.mxml           |   44 +
 .../tests/basicTests/halo/views/ImageTests.mxml |   39 +
 .../halo/views/ListAndDataGridTests.mxml        |   75 ++
 .../halo/views/ListOfUSStateNames.xml           |   73 ++
 .../halo/views/MXItemRendererTests.mxml         |  122 ++
 .../basicTests/halo/views/MenuBarTests.mxml     |   64 ++
 .../tests/basicTests/halo/views/MenuTests.mxml  |   68 ++
 .../halo/views/NumericStepperTests.mxml         |   37 +
 .../basicTests/halo/views/ProgressBarTests.mxml |   39 +
 .../halo/views/RPCDataBindingTests.mxml         |   43 +
 .../basicTests/halo/views/RadioButtonTests.mxml |   41 +
 .../basicTests/halo/views/SWFLoaderTests.mxml   |   39 +
 .../basicTests/halo/views/SliderTests.mxml      |   41 +
 .../halo/views/TabNavigatorTests.mxml           |   50 +
 .../basicTests/halo/views/TextAreaTests.mxml    |   37 +
 .../basicTests/halo/views/TextInputTests.mxml   |   37 +
 .../tests/basicTests/halo/views/TextTests.mxml  |   42 +
 .../tests/basicTests/halo/views/TreeTests.mxml  |   66 ++
 mustella/tests/basicTests/shim/VBox.as          |   47 +
 .../scripts/AdvancedStyleClientTestScript.mxml  |   67 ++
 .../scripts/AnimateConstraintsTestScript.mxml   |  120 ++
 .../scripts/BorderContainerTestScript.mxml      |   80 ++
 .../spark/scripts/ButtonBarTestScript.mxml      |   63 ++
 .../spark/scripts/ButtonTestScript.mxml         |   61 +
 .../spark/scripts/CheckBoxTestScript.mxml       |   60 +
 .../spark/scripts/CollatorTestScript.mxml       |  147 +++
 .../spark/scripts/ComboBoxTestScript.mxml       |   70 ++
 .../scripts/CurrencyFormatterTestScript.mxml    |  123 ++
 .../scripts/CurrencyValidatorTestScript.mxml    |  107 ++
 .../spark/scripts/DataGridTestScript.mxml       |   92 ++
 .../scripts/DateTimeFormatterTestScript.mxml    |  111 ++
 .../DeferredInstantiationTestScript.mxml        |   62 +
 .../spark/scripts/DesignLayerTestScript.mxml    |   57 +
 .../spark/scripts/DropDownListTestScript.mxml   |   70 ++
 .../spark/scripts/EasingTestScript.mxml         |   80 ++
 .../spark/scripts/FXG2RuntimeTestScript.mxml    |   83 ++
 .../spark/scripts/FormTestScript.mxml           |   65 ++
 .../spark/scripts/ImageTestScript.mxml          |   66 ++
 .../scripts/LayoutDirectionTestScript.mxml      |  193 ++++
 .../spark/scripts/LayoutTestScript.mxml         |  216 ++++
 .../spark/scripts/ListDragDropTestScript.mxml   |  266 +++++
 .../scripts/NumberFormatterTestScript.mxml      |  126 +++
 .../scripts/NumberValidatorTestScript.mxml      |  107 ++
 .../spark/scripts/NumericStepperTestScript.mxml |   89 ++
 .../scripts/PanelControlBarTestScript.mxml      |   67 ++
 .../spark/scripts/RadioButtonTestScript.mxml    |   69 ++
 .../spark/scripts/ScrollBarTestScript.mxml      |   61 +
 .../spark/scripts/SliderTestScript.mxml         |   64 ++
 .../spark/scripts/SortTestScript.mxml           |  105 ++
 .../spark/scripts/StringToolsTestScript.mxml    |   79 ++
 .../spark/scripts/StyleManagerTestScript.mxml   |   60 +
 .../spark/scripts/TextAreaTestScript.mxml       |   60 +
 .../spark/scripts/TextInputTestScript.mxml      |   63 ++
 .../spark/scripts/TileGroupTestScript.mxml      |   65 ++
 .../spark/scripts/TitleWindowTestScript.mxml    |   67 ++
 .../spark/views/AdvancedStyleClientTests.mxml   |   51 +
 .../spark/views/AnimateConstraintsTests.mxml    |  144 +++
 .../spark/views/BorderContainerTests.mxml       |   39 +
 .../basicTests/spark/views/ButtonBarTests.mxml  |   43 +
 .../basicTests/spark/views/ButtonTests.mxml     |   38 +
 .../basicTests/spark/views/CheckBoxTests.mxml   |   37 +
 .../basicTests/spark/views/CollatorTests.mxml   |   37 +
 .../basicTests/spark/views/ComboBoxTests.mxml   |   42 +
 .../spark/views/CurrencyFormatterTests.mxml     |   40 +
 .../spark/views/CurrencyValidatorTests.mxml     |   36 +
 .../basicTests/spark/views/DataGridTests.mxml   |   82 ++
 .../spark/views/DateTimeFormatterTests.mxml     |   50 +
 .../spark/views/DeferredInstantiationTests.mxml |   43 +
 .../spark/views/DesignLayerTests.mxml           |   31 +
 .../spark/views/DropDownListTests.mxml          |   39 +
 .../basicTests/spark/views/EasingTests.mxml     |   67 ++
 .../spark/views/FXG2RuntimeTests.mxml           |   54 +
 .../tests/basicTests/spark/views/FormTests.mxml |   60 +
 .../basicTests/spark/views/HelloWorld.mxml      |  182 +++
 .../basicTests/spark/views/ImageTests.mxml      |   35 +
 .../spark/views/LayoutDirectionTests.mxml       |   33 +
 .../basicTests/spark/views/LayoutTests.mxml     |   30 +
 .../spark/views/ListDragDropTests.mxml          |   67 ++
 .../spark/views/NumberFormatterTests.mxml       |   40 +
 .../spark/views/NumberValidatorTests.mxml       |   36 +
 .../spark/views/NumericStepperTests.mxml        |   37 +
 .../spark/views/PanelControlBarTests.mxml       |   52 +
 .../spark/views/RadioButtonTests.mxml           |   49 +
 .../basicTests/spark/views/ScrollBarTests.mxml  |   42 +
 .../basicTests/spark/views/SliderTests.mxml     |   41 +
 .../tests/basicTests/spark/views/SortTests.mxml |   64 ++
 .../spark/views/StringToolsTests.mxml           |   35 +
 .../spark/views/StyleManagerModuleTest.mxml     |   34 +
 .../spark/views/StyleManagerTests.mxml          |   49 +
 .../basicTests/spark/views/TextAreaTests.mxml   |   37 +
 .../basicTests/spark/views/TextInputTests.mxml  |   37 +
 .../basicTests/spark/views/TileGroupTests.mxml  |   48 +
 .../spark/views/TitleWindowTests.mxml           |   46 +
 .../spark/views/styleTest/ADVStyleTestClass.as  |  119 ++
 .../spark/views/styleTest/ADVStyleTestEvent.as  |   42 +
 208 files changed, 12234 insertions(+), 194 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index 5418429..aad6e98 100644
--- a/build.xml
+++ b/build.xml
@@ -1151,7 +1151,6 @@
         Tests: The current checkintests that must be run before every checkin
     -->
 
-    <!-- FixMe: add dependency checker and mobile tests -->
     <target name="checkintests" depends="basictests-mustella" description="Run these tests before every checkin" />
     <!--<target name="checkintests" depends="dependencychecker-framework,basictests-mustella,checkintests-mobile" description="Run these tests before every checkin"/-->
     
@@ -1161,7 +1160,7 @@
 
     <target name="basictests-mustella" depends="mustella-setup,basictests"/>
 
-    <target name="mustella-setup" depends="runtime-setup" description="compile mustella java file">
+    <target name="mustella-setup" depends="prebuild,runtime-setup" description="compile mustella java file">
     <!--
         <ant dir="${basedir}/mustella" target="makemustellaswc">
             <property name="use_mustella_framework_dir" value="false"/>
@@ -1208,20 +1207,20 @@
     <target name="load-task" depends="runtime-setup">
         <!-- load the <mxmlc> task; we can't do this at the <project> level -->
         <!-- because targets that run before flexTasks.jar gets built would fail -->
-        <taskdef resource="flexTasks.tasks" classpath="${basedir}/lib/flexTasks.jar"/>
+        <taskdef resource="flexTasks.tasks" classpath="${FALCON_HOME}/lib/falcon-flexTasks.jar"/>
     </target>
 
     <target name="basictests" depends="load-task" description="run basic tests using mustella">
 
-        <!-- compile the basic tests
+        <property name="FLEX_HOME" value="${basedir}" />
         <mxmlc fork="true"
-               file="${basedir}/frameworks/tests/basicTests/BasicTests.mxml">
+               file="${basedir}/mustella/tests/basicTests/BasicTestsApp.mxml">
             <jvmarg line="${mxmlc.jvm.args}"/>
+            <arg line="-compiler.mxml.children-as-data=true" />
             <library-path dir="${basedir}" append="true">
-                <include name="mustella/mustella.swc"/>
+                <include name="${FLEX_SDK_HOME}/mustella/mustella.swc"/>
             </library-path>
         </mxmlc>
-         -->
         <!-- compile supporting swfs for basic tests
         <mxmlc fork="true"
                file="${basedir}/frameworks/tests/basicTests/basicLoader.as">
@@ -1238,22 +1237,20 @@
             <jvmarg line="${mxmlc.jvm.args}"/>
         </mxmlc>
          -->
-        <!-- run the component smoke
+        <!-- run the component smoke -->
         <echo message="launching player and swf"/>
-        <exec executable="${flash.player}" dir="${basedir}/frameworks" failonerror="true">
-            <arg value="${basedir}/frameworks/tests/basicTests/BasicTests.swf"/>
+        <exec executable="${flash.player}" dir="${basedir}/mustella/tests/basicTests" failonerror="true">
+            <arg value="${basedir}/mustella/tests/basicTests/BasicTestsApp.swf"/>
         </exec>
-          -->
-        <!-- halt if there was an error
+        <!-- halt if there was an error -->
         <antcall target="mustellaresultsparser"/>
-         -->
     </target>
 
     <target name="mustellaresultsparser">
         <java classname="mustella.MustellaResultsParser" failonerror="true">
             <sysproperty key="APPDATA" value="${env.APPDATA}"/>
             <classpath>
-                <pathelement location="${basedir}"/>
+                <pathelement location="${FLEX_SDK_HOME}"/>
             </classpath>
         </java>
     </target>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
new file mode 100644
index 0000000..f13cfc4
--- /dev/null
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
@@ -0,0 +1,220 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.flex.core
+{
+	import mx.states.State;
+	
+	import org.apache.flex.core.ValuesManager;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.ValueChangeEvent;
+	import org.apache.flex.utils.MXMLDataInterpreter;
+
+	[DefaultProperty("mxmlContent")]
+    
+    /**
+     *  The ContainerBase class is the base class for most containers
+     *  in FlexJS.  It is usable as the root tag of MXML
+     *  documents and UI controls and containers are added to it.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+	public class ContainerBase extends UIBase
+	{
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		public function ContainerBase()
+		{
+			super();
+		}
+		
+        /**
+         *  A ContainerBase doesn't create its children until it is added to
+         *  a parent.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		override public function addedToParent():void
+		{
+			// each MXML file can also have styles in fx:Style block
+			ValuesManager.valuesImpl.init(this);
+			
+			MXMLDataInterpreter.generateMXMLProperties(this, mxmlProperties);
+			MXMLDataInterpreter.generateMXMLInstances(this, this, MXMLDescriptor);
+			
+            super.addedToParent();
+            
+			dispatchEvent(new Event("initComplete"))
+		}
+		
+        /**
+         *  @copy org.apache.flex.core.Application#MXMLDescriptor
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		public function get MXMLDescriptor():Array
+		{
+			return null;
+		}
+		
+		private var mxmlProperties:Array ;
+		
+        /**
+         *  @copy org.apache.flex.core.Application#generateMXMLAttributes()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		public function generateMXMLAttributes(data:Array):void
+		{
+			mxmlProperties = data;
+		}
+		
+        /**
+         *  @copy org.apache.flex.core.ItemRendererClassFactory#mxmlContent
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		public var mxmlContent:Array;
+		
+        private var _states:Array;
+        
+        /**
+         *  The array of view states. These should
+         *  be instances of mx.states.State.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function get states():Array
+        {
+            return _states;
+        }
+
+        /**
+         *  @private
+         */
+        public function set states(value:Array):void
+        {
+            _states = value;
+			try{
+				if (getBeadByType(IStatesImpl) == null)
+					addBead(new (ValuesManager.valuesImpl.getValue(this, "iStatesImpl")) as IBead);
+			}
+			//TODO:  Need to handle this case more gracefully
+			catch(e:Error)
+			{
+				trace(e.message);
+			}
+            
+        }
+        
+        /**
+         *  <code>true</code> if the array of states
+         *  contains a state with this name.
+         * 
+         *  @param state The state namem.
+         *  @return True if state in state array
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function hasState(state:String):Boolean
+        {
+            for each (var s:State in _states)
+            {
+                if (s.name == state)
+                    return true;
+            }
+            return false;
+        }
+        
+        private var _currentState:String;
+        
+        /**
+         *  The name of the current state.
+         * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function get currentState():String
+        {
+            return _currentState;   
+        }
+
+        /**
+         *  @private
+         */
+        public function set currentState(value:String):void
+        {
+            var event:ValueChangeEvent = new ValueChangeEvent("currentStateChanged", false, false, _currentState, value)
+            _currentState = value;
+            dispatchEvent(event);
+        }
+        
+        private var _transitions:Array;
+        
+        /**
+         *  The array of transitions.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function get transitions():Array
+        {
+            return _transitions;   
+        }
+        
+        /**
+         *  @private
+         */
+        public function set transitions(value:Array):void
+        {
+            _transitions = value;   
+        }
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ViewBase.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ViewBase.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ViewBase.as
index d534978..b5ed194 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ViewBase.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ViewBase.as
@@ -18,12 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.core
 {
-	import mx.states.State;
-	
-	import org.apache.flex.core.ValuesManager;
 	import org.apache.flex.events.Event;
-	import org.apache.flex.events.ValueChangeEvent;
-	import org.apache.flex.utils.MXMLDataInterpreter;
 
     //--------------------------------------
     //  Events
@@ -54,7 +49,7 @@ package org.apache.flex.core
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-	public class ViewBase extends UIBase implements IPopUpHost
+	public class ViewBase extends ContainerBase implements IPopUpHost
 	{
         /**
          *  Constructor.
@@ -69,64 +64,6 @@ package org.apache.flex.core
 			super();
 		}
 		
-        /**
-         *  A ViewBase doesn't create its children until it is added to
-         *  a parent, usually the application.
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-		override public function addedToParent():void
-		{
-			// each MXML file can also have styles in fx:Style block
-			ValuesManager.valuesImpl.init(this);
-			
-			MXMLDataInterpreter.generateMXMLProperties(this, mxmlProperties);
-			MXMLDataInterpreter.generateMXMLInstances(this, this, MXMLDescriptor);
-			
-			dispatchEvent(new Event("initComplete"))
-		}
-		
-        /**
-         *  @copy org.apache.flex.core.Application#MXMLDescriptor
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-		public function get MXMLDescriptor():Array
-		{
-			return null;
-		}
-		
-		private var mxmlProperties:Array ;
-		
-        /**
-         *  @copy org.apache.flex.core.Application#generateMXMLAttributes()
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-		public function generateMXMLAttributes(data:Array):void
-		{
-			mxmlProperties = data;
-		}
-		
-        /**
-         *  @copy org.apache.flex.core.ItemRendererClassFactory#mxmlContent
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-		public var mxmlContent:Array;
-		
 		private var _applicationModel:Object;
 		
 		[Bindable("modelChanged")]
@@ -155,109 +92,5 @@ package org.apache.flex.core
             dispatchEvent(new Event("modelChanged"));
         }
 
-        private var _states:Array;
-        
-        /**
-         *  The array of view states. These should
-         *  be instances of mx.states.State.
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-        public function get states():Array
-        {
-            return _states;
-        }
-
-        /**
-         *  @private
-         */
-        public function set states(value:Array):void
-        {
-            _states = value;
-			try{
-				if (getBeadByType(IStatesImpl) == null)
-					addBead(new (ValuesManager.valuesImpl.getValue(this, "iStatesImpl")) as IBead);
-			}
-			//TODO:  Need to handle this case more gracefully
-			catch(e:Error)
-			{
-				trace(e.message);
-			}
-            
-        }
-        
-        /**
-         *  <code>true</code> if the array of states
-         *  contains a state with this name.
-         * 
-         *  @param state The state namem.
-         *  @return True if state in state array
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-        public function hasState(state:String):Boolean
-        {
-            for each (var s:State in _states)
-            {
-                if (s.name == state)
-                    return true;
-            }
-            return false;
-        }
-        
-        private var _currentState:String;
-        
-        /**
-         *  The name of the current state.
-         * 
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-        public function get currentState():String
-        {
-            return _currentState;   
-        }
-
-        /**
-         *  @private
-         */
-        public function set currentState(value:String):void
-        {
-            var event:ValueChangeEvent = new ValueChangeEvent("currentStateChanged", false, false, _currentState, value)
-            _currentState = value;
-            dispatchEvent(event);
-        }
-        
-        private var _transitions:Array;
-        
-        /**
-         *  The array of transitions.
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-        public function get transitions():Array
-        {
-            return _transitions;   
-        }
-        
-        /**
-         *  @private
-         */
-        public function set transitions(value:Array):void
-        {
-            _transitions = value;   
-        }
-
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/Container.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/Container.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/Container.as
index d77d9cd..f9450b1 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/Container.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/Container.as
@@ -24,7 +24,7 @@ package org.apache.flex.html.staticControls
 	import org.apache.flex.core.IChrome;
 	import org.apache.flex.core.IContainer;
 	import org.apache.flex.core.IUIBase;
-	import org.apache.flex.core.UIBase;
+	import org.apache.flex.core.ContainerBase;
 	import org.apache.flex.events.Event;
 	
 	[DefaultProperty("mxmlContent")]
@@ -58,7 +58,7 @@ package org.apache.flex.html.staticControls
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */    
-	public class Container extends UIBase implements IContainer
+	public class Container extends ContainerBase implements IContainer
 	{
         /**
          *  Constructor.
@@ -74,16 +74,6 @@ package org.apache.flex.html.staticControls
 			actualParent = this;
 		}
 		
-        /**
-         *  @copy org.apache.flex.core.ItemRendererClassFactory#mxmlContent
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-		public var mxmlContent:Array;
-
 		private var actualParent:DisplayObjectContainer;
 		
         /**

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/BasicTests-config.xml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/BasicTests-config.xml b/mustella/tests/basicTests/BasicTests-config.xml
new file mode 100644
index 0000000..e87fca1
--- /dev/null
+++ b/mustella/tests/basicTests/BasicTests-config.xml
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<flex-config>
+    <compiler>
+	    <debug>true</debug>
+    </compiler>
+    <includes>
+    <!--
+    -->
+        <symbol>halo.scripts.ButtonTestScript</symbol>
+        <symbol>halo.scripts.CheckBoxTestScript</symbol>
+        <symbol>halo.scripts.RadioButtonTestScript</symbol>
+        <symbol>halo.scripts.TextInputTestScript</symbol>
+        <symbol>halo.scripts.TextAreaTestScript</symbol>
+        <symbol>halo.scripts.ComboBoxTestScript</symbol>
+        <!--<symbol>halo.scripts.ColorPickerTestScript</symbol>-->
+        <symbol>halo.scripts.NumericStepperTestScript</symbol>
+        <!--<symbol>halo.scripts.DateFieldTestScript</symbol>-->
+        <!--<symbol>halo.scripts.MenuTestScript</symbol>-->
+        <!--<symbol>halo.scripts.MenuBarTestScript</symbol>-->
+        <!--<symbol>halo.scripts.FocusManagerTestScript</symbol>-->
+        <symbol>halo.scripts.ListAndDataGridTestScript</symbol>
+        <!--<symbol>halo.scripts.TreeTestScript</symbol>-->
+        <symbol>halo.scripts.ImageTestScript</symbol>
+        <!--<symbol>halo.scripts.SWFLoaderTestScript</symbol>-->
+        <symbol>halo.scripts.TextTestScript</symbol>
+        <!--<symbol>halo.scripts.FTETextTestScript</symbol>-->
+        <!--<symbol>halo.scripts.ProgressBarTestScript</symbol>-->
+        <symbol>halo.scripts.SliderTestScript</symbol>
+        <symbol>halo.scripts.AlertTestScript</symbol>
+        <!--<symbol>halo.scripts.TabNavigatorTestScript</symbol>-->
+        <!--<symbol>halo.scripts.AccordionTestScript</symbol>-->
+        <!--<symbol>halo.scripts.RPCDataBindingTestScript</symbol>-->
+        <!--<symbol>halo.scripts.CollectionTestScript</symbol>-->
+        <!--<symbol>spark.scripts.ListDragDropTestScript</symbol>-->
+        <!--<symbol>halo.scripts.MXItemRendererTestScript</symbol>-->
+        <!--<symbol>spark.scripts.BorderContainerTestScript</symbol>-->
+        <!--<symbol>spark.scripts.ButtonTestScript</symbol>-->
+        <!--<symbol>spark.scripts.CheckBoxTestScript</symbol>-->
+        <!--<symbol>spark.scripts.EasingTestScript</symbol>-->
+        <!--<symbol>spark.scripts.RadioButtonTestScript</symbol>-->
+        <!--<symbol>spark.scripts.TextInputTestScript</symbol>-->
+        <!--<symbol>spark.scripts.TextAreaTestScript</symbol>-->
+        <!--<symbol>spark.scripts.DesignLayerTestScript</symbol>-->
+        <!--<symbol>spark.scripts.ComboBoxTestScript</symbol>-->
+        <!--<symbol>spark.scripts.DropDownListTestScript</symbol>-->
+        <!--<symbol>spark.scripts.FormTestScript</symbol>-->
+        <!--<symbol>spark.scripts.NumericStepperTestScript</symbol>-->
+        <!--<symbol>spark.scripts.SliderTestScript</symbol>-->
+        <!--<symbol>spark.scripts.ScrollBarTestScript</symbol>-->
+        <!--<symbol>spark.scripts.DeferredInstantiationTestScript</symbol>-->
+        <!--<symbol>spark.scripts.LayoutDirectionTestScript</symbol>-->
+        <!--<symbol>spark.scripts.LayoutTestScript</symbol>-->
+        <!--<symbol>spark.scripts.PanelControlBarTestScript</symbol>-->
+        <!--<symbol>spark.scripts.ButtonBarTestScript</symbol>-->
+        <!--<symbol>spark.scripts.TileGroupTestScript</symbol>-->
+        <!--<symbol>spark.scripts.TitleWindowTestScript</symbol>-->
+        <!--<symbol>graphics.scripts.GraphicsTagsTestScript</symbol>-->
+        <!--<symbol>fxg.scripts.FXGCompileTestScript</symbol>-->
+        <!--<symbol>fxg.scripts.FXG2CompileTestScript</symbol>-->
+        <!--<symbol>spark.scripts.StyleManagerTestScript</symbol>-->
+	    <!--<symbol>spark.scripts.FXG2RuntimeTestScript</symbol>-->
+	    <!--<symbol>dmv.scripts.ADGTestScript</symbol>-->
+	    <!--<symbol>dmv.scripts.ODGTestScript</symbol>-->
+	    <symbol>dmv.scripts.ChartsTestScript</symbol>	
+        <!--<symbol>spark.scripts.AnimateConstraintsTestScript</symbol>-->
+        <!--<symbol>spark.scripts.ImageTestScript</symbol>-->
+        <!--<symbol>spark.scripts.DateTimeFormatterTestScript</symbol>-->
+        <!--<symbol>spark.scripts.AdvancedStyleClientTestScript</symbol>-->
+        <!--<symbol>spark.scripts.NumberFormatterTestScript</symbol>-->
+        <!--<symbol>spark.scripts.StringToolsTestScript</symbol>-->
+        <!--<symbol>spark.scripts.CollatorTestScript</symbol>-->
+        <!--<symbol>spark.scripts.CurrencyFormatterTestScript</symbol>-->
+        <!--<symbol>spark.scripts.DataGridTestScript</symbol>-->
+		<!--<symbol>spark.scripts.CurrencyValidatorTestScript</symbol>-->
+        <!--<symbol>spark.scripts.NumberValidatorTestScript</symbol>-->
+	<!--<symbol>spark.scripts.SortTestScript</symbol>-->
+    <!--
+        From mustella.swc
+    -->
+        <symbol>ExitWhenDone</symbol>
+        <symbol>SetShowRTE</symbol>
+        <symbol>SendFormattedResultsToLog</symbol>
+    </includes>
+</flex-config>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/BasicTests.css
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/BasicTests.css b/mustella/tests/basicTests/BasicTests.css
new file mode 100644
index 0000000..1c62545
--- /dev/null
+++ b/mustella/tests/basicTests/BasicTests.css
@@ -0,0 +1,170 @@
+/*
+ *
+ *  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.
+ *
+ */
+
+/*
+ @namespace "library://ns.adobe.com/flex/spark";
+ */
+@namespace mx "library://ns.apache.org/flexjs/basic";
+@namespace my "shim.*";
+
+.global {
+    font-family:"Tahoma";
+    font-size:11px;
+    color:#222222;
+}
+
+.appTitle {
+    font-weight:bold;
+    font-size:16px;
+}
+
+mx|ViewBase {
+/*	background-image: "";
+    theme-color:#CC6600;   */
+    selection-color:#D0DFE6;
+    roll-over-color:#E6F0F3;
+    background-color:#FFFFFF;
+    font-family: Verdana;
+}
+
+
+
+mx|Panel {
+/*    header-colors: #FAEED1, #E3C38D;
+    footer-colors: #F4DBB0, #E3C38D;  */
+    corner-radius:10;
+/*    drop-shadow: true;
+    shadow-distance:6;  */
+    margin-top:0;
+    margin-left:0;
+    margin-right:0;
+    margin-bottom:0;
+}
+
+
+
+mx|Button {
+    color: #FFFFFF;
+    disabled-color: #999999;
+    text-roll-over-color: #FFFFFF;
+    font-family:"Verdana";
+    font-size: 9px;
+    font-weight: "bold";
+/*    fill-colors: #C86336, #763322;  */
+    corner-radius:8;
+/*    border-color: #854230;
+    border-thickness:3;  */
+	foo: 42;  /* This should not cause a warning or error. */
+}
+
+
+mx|CheckBox {
+    color: #000000;
+    font-size: 10px;
+    font-weight: "normal";
+}
+
+mx|RadioButton {
+    color: #000000;
+    font-size: 10px;
+    font-weight: "normal";
+}
+
+
+
+mx|DataGrid {
+    alternating-row-colors:#FFFCEC,#FFF6E2;
+    border-style:"solid";
+    border-color:#CCCCCC;
+    header-color:#FAEED1;
+    v-grid-line-color:#CCCCCC;
+    color:#111111;
+    font-size:9px;
+    text-indent:4;
+}
+
+
+
+
+mx|ComboBox {
+    color: #111111;
+    text-roll-over-color: #111111;
+    font-size:9px;
+    font-weight: "bold";
+/*    fill-colors: #FFFFFF, #C2CCCF;  */
+    background-color: #FFFCEC;
+    corner-radius: 7;
+/*    border-thickness: 1;
+    border-color: #854230;  */
+    margin-left: 6;
+    selection-color:#f5dcb2;
+    roll-over-color:#faeed1;
+
+}
+
+
+my|HSlider {
+/*    fill-colors: #FFFFFF, #C2CCCF;
+    track-colors: #FAEED1, #E3C38D;
+    border-color: #666666;  */
+    tick-color: #666666;
+    label-offset: -3;
+    tick-offset: -3;
+    track-highlight: true;
+}
+
+/*
+mx|Menu {
+	openDuration: 250;
+}
+*/
+
+/*
+Apache Flex: requires rideau.jar which is not open-source 
+
+@font-face {
+	src: url("BickhamScriptPro-Regular.otf");
+	fontFamily: "TestFont";
+	embedAsCFF: true;
+}
+
+*/
+
+/*
+TextInput {
+/*    font-family:"TestFont";  */
+/*    paddingTop: 5;
+
+}
+*/
+
+my|VBox {
+    IBeadLayout: ClassReference("org.apache.flex.html.staticControls.beads.layouts.NonVirtualVerticalLayout");
+}
+
+/*
+@media (os-platform: "Android") and (application-dpi: 160)
+{
+    mx|ComboBox 
+    {
+        color: #111111;
+        fontSize:9px;
+    }
+}
+*/
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/BasicTests.mxml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/BasicTests.mxml b/mustella/tests/basicTests/BasicTests.mxml
new file mode 100644
index 0000000..7ed2c74
--- /dev/null
+++ b/mustella/tests/basicTests/BasicTests.mxml
@@ -0,0 +1,211 @@
+<?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.
+
+-->
+<basic:ViewBase xmlns:fx="http://ns.adobe.com/mxml/2009"
+    xmlns:basic="library://ns.apache.org/flexjs/basic" 
+    xmlns:mx="library://ns.adobe.com/flex/mx"
+    xmlns:haloviews="halo.views.*"
+    xmlns:sparkviews="spark.views.*"
+    xmlns:graphicsviews="graphics.views.*"
+    xmlns:fxgviews="fxg.views.*"
+    xmlns:dmvviews="dmv.views.*"
+    height="800" width="1000"
+    >
+
+    <!-- Style sheet used in this application -->
+    <fx:Style source="BasicTests.css"/>
+
+    <!--  STEP 1: Add a state for your test here -->
+    <basic:states>
+        <mx:State name="basicTest" />
+        <mx:State name="haloButtonTest" />
+        <mx:State name="haloCheckBoxTest" />
+        <mx:State name="haloRadioButtonTest" />
+        <mx:State name="haloTextInputTest" />
+        <mx:State name="haloTextAreaTest" />
+        <mx:State name="haloComboBoxTest" />
+        <!--<mx:State name="haloColorPickerTest" />-->
+        <mx:State name="haloNumericStepperTest" />
+        <!--<mx:State name="haloDateFieldTest" />-->
+        <!--<mx:State name="haloMenuTest" />-->
+        <!--<mx:State name="haloMenuBarTest" />-->
+        <!--<mx:State name="haloFocusManagerTest" />-->
+        <mx:State name="haloListAndDataGridTest" />
+        <!--<mx:State name="haloTreeTest" />-->
+        <mx:State name="haloImageTest" />
+        <!--<mx:State name="haloSWFLoaderTest" />-->
+        <mx:State name="haloTextTest" />
+        <!--<mx:State name="haloFTETextTest" />-->
+        <!--<mx:State name="haloProgressBarTest" />-->
+        <mx:State name="haloSliderTest" />
+        <!--<mx:State name="haloTabNavigatorTest" />-->
+        <!--<mx:State name="haloAccordionTest" />-->
+        <mx:State name="haloAlertTest" />
+        <!--<mx:State name="haloRPCDataBindingTest" />-->
+        <!--<mx:State name="haloCollectionTest" />-->
+        <!--<mx:State name="dmvADGTest" />-->
+        <!--<mx:State name="dmvODGTest" />-->
+        <!--<mx:State name="dmvChartsTest" />        
+        <!--<mx:State name="sparkListDragDropTest" />-->
+        <!--<mx:State name="sparkBorderContainerTest" />-->
+        <!--<mx:State name="sparkButtonTest" />-->
+        <!--<mx:State name="sparkCheckBoxTest" />-->
+        <!--<mx:State name="sparkAnimateConstraintsTest" />-->
+        <!--<mx:State name="sparkEasingTest" />-->
+        <!--<mx:State name="sparkRadioButtonTest" />-->
+        <!--<mx:State name="sparkTextInputTest" />-->
+        <!--<mx:State name="sparkTextAreaTest" />-->
+        <!--<mx:State name="sparkComboBoxTest" />-->
+        <!--<mx:State name="sparkDropDownListTest" />-->
+        <!--<mx:State name="sparkFormTest" />-->
+        <!--<mx:State name="sparkLayoutDirectionTest" />-->
+        <!--<mx:State name="sparkNumericStepperTest" />-->
+        <!--<mx:State name="sparkSliderTest" />-->
+        <!--<mx:State name="sparkScrollBarTest" />-->
+        <!--<mx:State name="sparkDeferredInstantiationTest" />-->
+        <!--<mx:State name="sparkLayoutTest" />-->
+        <!--<mx:State name="sparkPanelControlBarTest" />-->
+        <!--<mx:State name="sparkButtonBarTest" />-->
+        <!--<mx:State name="sparkTileGroupTest" />-->
+        <!--<mx:State name="sparkTitleWindowTest" />-->
+        <!--<mx:State name="sparkVideoPlayerTest" />-->
+        <!--<mx:State name="mxItemRendererTest" />-->
+        <!--<mx:State name="graphicsTagsTest" />-->
+        <!--<mx:State name="fxgCompileTest" />-->
+        <!--<mx:State name="fxg2CompileTest" />-->
+        <!--<mx:State name="designLayerTest" />-->
+        <!--<mx:State name="styleManagerTest" />-->
+        <!--<mx:State name="fxg2RuntimeTest" />-->
+        <!--<mx:State name="imageTest" />-->
+        <!--<mx:State name="sparkDateTimeFormatterTest" />-->
+        <!--<mx:State name="sparkAdvancedStyleClientTest" />-->
+        <!--<mx:State name="sparkNumberFormatterTest" />-->
+        <!--<mx:State name="sparkStringToolsTest" />-->
+        <!--<mx:State name="sparkCollatorTest" />-->
+        <!--<mx:State name="sparkCurrencyFormatterTest" />-->
+        <!--<mx:State name="sparkDataGridTest" />-->
+        <!--<mx:State name="sparkCurrencyValidatorTest" />-->
+        <!--<mx:State name="sparkNumberValidatorTest" />-->
+        <!--<mx:State name="sparkSortTest" /> -->
+    </basic:states>
+    
+    <!--  STEP 2: Add an mxml component with the widgets for your test here -->
+    <haloviews:ButtonTests id="haloButtonTests" includeIn="haloButtonTest" />    
+    <haloviews:CheckBoxTests id="haloCheckBoxTests" includeIn="haloCheckBoxTest" /> 
+<!-- temporary
+    <haloviews:RadioButtonTests id="haloRadioButtonTests" includeIn="haloRadioButtonTest" />    
+    <haloviews:TextInputTests id="haloTextInputTests" includeIn="haloTextInputTest" />    
+    <haloviews:TextAreaTests id="haloTextAreaTests" includeIn="haloTextAreaTest" />    
+    <haloviews:ComboBoxTests id="haloComboBoxTests" includeIn="haloComboBoxTest" />    
+-->
+    <!--<haloviews:ColorPickerTests id="haloColorPickerTests" includeIn="haloColorPickerTest" /> -->    
+<!-- temporary
+    <haloviews:NumericStepperTests id="haloNumericStepperTests" includeIn="haloNumericStepperTest" />    
+-->
+    <!--<haloviews:DateFieldTests id="haloDateFieldTests" includeIn="haloDateFieldTest" />     -->
+    <!--<haloviews:MenuTests id="haloMenuTests" includeIn="haloMenuTest" />     -->
+    <!--<haloviews:MenuBarTests id="haloMenuBarTests" includeIn="haloMenuBarTest" />     -->
+    <!--<haloviews:FocusManagerTests id="haloFocusManagerTests" includeIn="haloFocusManagerTest" />   -->  
+<!-- temporary
+    <haloviews:ListAndDataGridTests id="haloListAndDataGridTests" includeIn="haloListAndDataGridTest" />    
+-->
+    <!--<haloviews:TreeTests id="haloTreeTests" includeIn="haloTreeTest" />     -->
+<!-- temporary
+    <haloviews:ImageTests id="haloImageTests" includeIn="haloImageTest" />    
+-->
+    <!--<haloviews:SWFLoaderTests id="haloSWFLoaderTests" includeIn="haloSWFLoaderTest" />   -->  
+<!-- temporary
+    <haloviews:TextTests id="haloTextTests" includeIn="haloTextTest" />    
+-->
+    <!--<haloviews:FTETextTests id="haloFTETextTests" includeIn="haloFTETextTest" />   -->  
+    <!--<haloviews:ProgressBarTests id="haloProgressBarTests" includeIn="haloProgressBarTest" />   -->  
+<!-- temporary
+    <haloviews:SliderTests id="haloSliderTests" includeIn="haloSliderTest" />    
+-->
+    <!--<haloviews:TabNavigatorTests id="haloTabNavigatorTests" includeIn="haloTabNavigatorTest" />    --> 
+    <!--<haloviews:AccordionTests id="haloAccordionTests" includeIn="haloAccordionTest" />     -->
+    <!--<haloviews:AlertTests id="haloAlertTests" includeIn="haloAlertTest" />
+    <!--<haloviews:RPCDataBindingTests id="haloRPCDataBindingTests" includeIn="haloRPCDataBindingTest" />     -->
+    <!--<haloviews:CollectionTests id="haloCollectionTests" includeIn="haloCollectionTest" /> -->
+    <!--<sparkviews:ListDragDropTests id="sparkListDragDropTests" includeIn="sparkListDragDropTest" /> -->
+    <!--<haloviews:MXItemRendererTests id="mxItemRendererTests" includeIn="mxItemRendererTest" />  -->
+    <!--<sparkviews:BorderContainerTests id="sparkBorderContainerTests" includeIn="sparkBorderContainerTest" />   -->  
+    <!--<sparkviews:ButtonTests id="sparkButtonTests" includeIn="sparkButtonTest" />     -->
+    <!--<sparkviews:CheckBoxTests id="sparkCheckBoxTests" includeIn="sparkCheckBoxTest" />   -->  
+    <!--<sparkviews:EasingTests id="sparkEasingTests" includeIn="sparkEasingTest" />     -->
+    <!--<sparkviews:AnimateConstraintsTests id="sparkAnimateConstraintsTests" includeIn="sparkAnimateConstraintsTest" />     -->
+    <!--<sparkviews:RadioButtonTests id="sparkRadioButtonTests" includeIn="sparkRadioButtonTest" />     -->
+    <!--<sparkviews:TextInputTests id="sparkTextInputTests" includeIn="sparkTextInputTest" />     -->
+    <!--<sparkviews:TextAreaTests id="sparkTextAreaTests" includeIn="sparkTextAreaTest" />     -->
+    <!--<sparkviews:ComboBoxTests id="sparkComboBoxTests" includeIn="sparkComboBoxTest" /> -->
+    <!--<sparkviews:DropDownListTests id="sparkDropDownListTests" includeIn="sparkDropDownListTest" />    --> 
+    <!--<sparkviews:FormTests id="sparkFormTests" includeIn="sparkFormTest" /> -->
+    <!--<sparkviews:LayoutDirectionTests id="sparkLayoutDirectionTests" includeIn="sparkLayoutDirectionTest" />   -->  
+    <!--<sparkviews:NumericStepperTests id="sparkNumericStepperTests" includeIn="sparkNumericStepperTest" />     -->
+    <!--<sparkviews:SliderTests id="sparkSliderTests" includeIn="sparkSliderTest" />     -->
+    <!--<sparkviews:ScrollBarTests id="sparkScrollBarTests" includeIn="sparkScrollBarTest" />    --> 
+    <!--<sparkviews:DeferredInstantiationTests id="sparkDeferredInstantiationTests" includeIn="sparkDeferredInstantiationTest" />   -->  
+    <!--<sparkviews:DesignLayerTests id="designLayerTests" includeIn="designLayerTest" />     -->
+    <!--<sparkviews:TileGroupTests id="sparkTileGroupTests" includeIn="sparkTileGroupTest" />     -->
+    <!--<sparkviews:LayoutTests id="sparkLayoutTests" includeIn="sparkLayoutTest" />     -->
+    <!--<sparkviews:PanelControlBarTests id="sparkPanelControlBarTests" includeIn="sparkPanelControlBarTest" />    --> 
+    <!--<sparkviews:ButtonBarTests id="sparkButtonBarTests" includeIn="sparkButtonBarTest" />     -->
+    <!--<sparkviews:TitleWindowTests id="sparkTitleWindowTests" includeIn="sparkTitleWindowTest" /> -->
+    <!--<graphicsviews:GraphicsTagsTests id="graphicsTagsTests" includeIn="graphicsTagsTest" />     -->
+    <!--<fxgviews:FXGCompileTests id="fxgCompileTests" includeIn="fxgCompileTest" /> -->
+    <!--<fxgviews:FXG2CompileTests id="fxg2CompileTests" includeIn="fxg2CompileTest" />  -->   
+    <!--<sparkviews:StyleManagerTests id="styleManagerTests" includeIn="styleManagerTest" /> -->
+    <!--<sparkviews:FXG2RuntimeTests id="fxg2RuntimeTests" includeIn="fxg2RuntimeTest" /> -->
+    <!--<dmvviews:ADGTests id="dmvADGTests" includeIn="dmvADGTest" /> -->
+    <!--<dmvviews:ODGTests id="dmvODGTests" includeIn="dmvODGTest" /> -->
+<!-- temporary
+    <dmvviews:ChartsTests id="dmvChartsTests" includeIn="dmvChartsTest" />
+-->
+    <!--<sparkviews:ImageTests id="imageTests" includeIn="imageTest" /> -->
+    <!--<sparkviews:DateTimeFormatterTests id="sparkDateTimeFormatterTests" includeIn="sparkDateTimeFormatterTest" /> -->
+    <!--<sparkviews:AdvancedStyleClientTests id="sparkAdvancedStyleClientTests" includeIn="sparkAdvancedStyleClientTest" /> -->
+    <!--<sparkviews:NumberFormatterTests id="sparkNumberFormatterTests" includeIn="sparkNumberFormatterTest" /> -->
+    <!--<sparkviews:StringToolsTests id="sparkStringToolsTests" includeIn="sparkStringToolsTest" /> -->
+    <!--<sparkviews:CollatorTests id="sparkCollatorTests" includeIn="sparkCollatorTest" /> -->
+    <!--<sparkviews:CurrencyFormatterTests id="sparkCurrencyFormatterTests" includeIn="sparkCurrencyFormatterTest" /> -->
+    <!--<sparkviews:DataGridTests id="sparkDataGridTests" includeIn="sparkDataGridTest" /> -->
+    <!--<sparkviews:CurrencyValidatorTests id="sparkCurrencyValidatorTests" includeIn="sparkCurrencyValidatorTest" /> -->
+    <!--<sparkviews:NumberValidatorTests id="sparkNumberValidatorTests" includeIn="sparkNumberValidatorTest" /> -->
+    <!--<sparkviews:SortTests id="sparkSortTests" includeIn="sparkSortTest" /> -->
+	
+
+    <!--  STEP 3: Add the testscript to BasicTests-config.xml -->
+    
+    <!--  STEP 4 (Optional): Debug your state without running tests.
+          a. Rename BasicTests-config.xml to BasicTests-config.sav
+          b. Uncomment the block of components below.
+          c. Re-run basic tests or compile BasicTests.mxml at the command line and run BasicTests.swf.
+          d. Enter the name of the state you want to debug.
+    -->
+
+    <!--
+    <s:Group >
+        <s:layout>
+            <s:HorizontalLayout paddingTop="10" />
+        </s:layout>
+        <mx:Label text="Enter the new state:" />
+        <mx:TextInput id="newStateInput" text="" enter="{currentState=newStateInput.text}" />
+    </s:Group>    
+    -->    
+</basic:ViewBase>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/BasicTestsApp.mxml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/BasicTestsApp.mxml b/mustella/tests/basicTests/BasicTestsApp.mxml
new file mode 100644
index 0000000..fa1f8cd
--- /dev/null
+++ b/mustella/tests/basicTests/BasicTestsApp.mxml
@@ -0,0 +1,53 @@
+<?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.
+
+-->
+<basic:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:local="*"
+                   xmlns:basic="library://ns.apache.org/flexjs/basic" 
+                   xmlns:models="models.*" 
+                   xmlns:controllers="controllers.*"
+                   >
+    <basic:valuesImpl>
+        <basic:SimpleCSSValuesImpl />
+    </basic:valuesImpl>
+    <basic:initialView>
+        <local:BasicTests />
+    </basic:initialView>
+    <!--
+    <basic:model>
+        <models:MyModel />
+    </basic:model>
+    <basic:controller>
+        <controllers:MyController />
+    </basic:controller>
+    <basic:beads>
+        <basic:HTTPService id="service">
+            <basic:LazyCollection id="collection">
+                <basic:inputParser>
+                    <basic:JSONInputParser />
+                </basic:inputParser>
+                <basic:itemConverter>
+                    <local:StockDataJSONItemConverter />
+                </basic:itemConverter> 
+            </basic:LazyCollection>
+        </basic:HTTPService>
+        <basic:ViewSourceContextMenuOption />
+    </basic:beads>
+    -->
+</basic:Application>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/basicImage.jpg
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/basicImage.jpg b/mustella/tests/basicTests/basicImage.jpg
new file mode 100644
index 0000000..98217a1
Binary files /dev/null and b/mustella/tests/basicTests/basicImage.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/basicLoader.as
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/basicLoader.as b/mustella/tests/basicTests/basicLoader.as
new file mode 100644
index 0000000..4753219
--- /dev/null
+++ b/mustella/tests/basicTests/basicLoader.as
@@ -0,0 +1,70 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package 
+{
+import flash.display.*;
+import flash.text.*;
+import flash.events.Event;
+
+[SWF(backgroundColor="0x0000FF", width="176", height="81")]
+public class basicLoader extends MovieClip
+{
+	private var circle:Sprite;
+	private var text:TextField;
+	
+	public function basicLoader()
+	{
+		super();
+		
+		text = new TextField();
+		text.width = 176;
+		text.height = 81;
+		
+		var tf:TextFormat;
+		tf = new TextFormat;
+		tf.bold = true;
+		tf.font = "Arial";
+		tf.size = "52";
+		
+		text.defaultTextFormat = tf;
+		text.text = "Flex";
+		
+		addChild(text);
+		
+		circle = new Sprite();
+		circle.graphics.beginFill(0xFF9933);
+		circle.graphics.lineStyle(1);
+		circle.graphics.drawCircle(0, 0, 28);
+		circle.graphics.endFill();
+		
+		addChild(circle);
+		
+		addEventListener(Event.ENTER_FRAME, enterFrameHandler);
+	}
+	
+	private function enterFrameHandler(event:Event):void
+	{
+		circle.x = (circle.x + 33) % 236 - 28;
+		circle.y = (circle.y + 33) % 134 - 28;		
+	}
+}
+
+
+}
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/dmv/scripts/ADGTestScript.mxml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/dmv/scripts/ADGTestScript.mxml b/mustella/tests/basicTests/dmv/scripts/ADGTestScript.mxml
new file mode 100644
index 0000000..d1ad557
--- /dev/null
+++ b/mustella/tests/basicTests/dmv/scripts/ADGTestScript.mxml
@@ -0,0 +1,108 @@
+<?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 xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="main.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>
+<!--
+-->
+		<TestCase testID="SetupADGTest1">
+			<body>
+				<SetProperty target="" propertyName="currentState" value="dmvADGTest" 
+                    waitEvent="updateComplete" />
+				<AssertPropertyValue target="dmvADGTests.testADG.dataProvider" propertyName="length" value="6" />
+				<AssertPropertyValue target="dmvADGTests.testADG2.dataProvider" propertyName="length" value="5" />
+				<AssertPropertyValue target="dmvADGTests.testADG3.dataProvider" propertyName="length" value="9" />
+			</body>
+		</TestCase>
+		<TestCase testID="DragDropADGTest1">
+			<body>
+				<DispatchMouseEvent target="dmvADGTests.testList" type="mouseOver" localX="10" localY="55" />
+				<DispatchMouseEvent target="dmvADGTests.testList" type="mouseDown" localX="10" localY="55" buttonDown="true" />
+ 				<DispatchMouseEvent target="dmvADGTests.testList" type="mouseMove" buttonDown="true" localX="2" localY="55" waitEvent="dragStart" />
+ 				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="0" localY="60"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+ 				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="0" localY="80"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="0" localY="100"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="0" localY="120"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+ 				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="0" localY="140"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="0" localY="180"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="0" localY="210"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="10" localY="210" waitTarget="dmvADGTests.testADG" waitEvent="dragEnter" />
+ 				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="20" localY="230"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+ 				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="30" localY="230"
+									waitTarget="mx.managers::DragManager.mx_internal:dragProxy" waitEvent="move"/>
+ 				<DispatchMouseEvent target="dmvADGTests" type="mouseMove" buttonDown="true" localX="40" localY="230" />
+ 				<DispatchMouseEvent target="dmvADGTests" type="mouseUp" localX="40" localY="210" waitTarget="dmvADGTests.testADG" waitEvent="dragDrop" />
+				<AssertEvent target="dmvADGTests.testList" eventName="dragComplete" eventClass="mx.events::DragEvent" />
+				<AssertPropertyValue target="dmvADGTests.testADG.dataProvider" propertyName="length" value="7" />
+			</body>
+		</TestCase>
+		<TestCase testID="ADGAddItemTest">
+			<body>
+				<DispatchMouseEvent target="dmvADGTests.addNodeButton" type="mouseOver" localX="10" localY="10" />
+				<DispatchMouseClickEvent target="dmvADGTests.addNodeButton"  localX="10" localY="10" waitEvent="updateComplete" waitTarget="dmvADGTests.testADG2" />
+				<AssertPropertyValue target="dmvADGTests.testADG2.dataProvider" propertyName="length" value="6" />
+			</body>
+		</TestCase>
+		<TestCase testID="ADGItemOpenTest">
+			<body>
+				<DispatchMouseEvent target="dmvADGTests.testADG2" type="mouseOver" localX="10" localY="78" />
+				<DispatchMouseClickEvent target="dmvADGTests.testADG2" localX="10" localY="78" />
+				<AssertEvent target="dmvADGTests.testADG2" eventName="itemOpen" eventClass="mx.events::AdvancedDataGridEvent" />
+				<AssertPropertyValue target="dmvADGTests.testADG2.dataProvider" propertyName="length" value="8" />
+			</body>
+		</TestCase>
+		<TestCase testID="ADGItemCloseTest">
+			<body>
+				<DispatchMouseEvent target="dmvADGTests.testADG3" type="mouseOver" localX="10" localY="78" />
+				<DispatchMouseClickEvent target="dmvADGTests.testADG3" localX="10" localY="78" />
+				<AssertEvent target="dmvADGTests.testADG3" eventName="itemClose" eventClass="mx.events::AdvancedDataGridEvent" />
+				<AssertPropertyValue target="dmvADGTests.testADG3.dataProvider" propertyName="length" value="6" />
+			</body>
+		</TestCase>
+	</testCases>
+</UnitTester>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/dmv/scripts/ChartsTestScript.mxml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/dmv/scripts/ChartsTestScript.mxml b/mustella/tests/basicTests/dmv/scripts/ChartsTestScript.mxml
new file mode 100644
index 0000000..69e0683
--- /dev/null
+++ b/mustella/tests/basicTests/dmv/scripts/ChartsTestScript.mxml
@@ -0,0 +1,89 @@
+<?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 xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="main.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>
+
+
+		<TestCase testID="SetupChartTest">
+			<body>
+				<SetProperty target="" propertyName="currentState" value="dmvChartsTest" 
+                    waitEvent="updateComplete" />
+				<SetProperty target="dmvChartsTests.testColumnChart" propertyName="dataProvider"
+							 valueExpression="value=application.dmvChartsTests.cChartDP()" 
+							 waitEvent="updateComplete" />
+				<SetProperty target="dmvChartsTests.testBarChart" propertyName="dataProvider"
+							 valueExpression="value=application.dmvChartsTests.bChartDP()" 
+							 waitEvent="updateComplete" />
+				<SetProperty target="dmvChartsTests.testPieChart" propertyName="dataProvider"
+							 valueExpression="value=application.dmvChartsTests.pChartDP()" 
+							 waitEvent="updateComplete" />
+
+				<AssertPropertyValue target="dmvChartsTests.testColumnChart.dataProvider" propertyName="length" value="10" />
+				<AssertPropertyValue target="dmvChartsTests.testBarChart.dataProvider" propertyName="length" value="5" />
+				<AssertPropertyValue target="dmvChartsTests.testPieChart.dataProvider" propertyName="length" value="4" />	
+			</body>
+		</TestCase>
+
+		<TestCase testID="TestMinMax">
+			<body>
+				<AssertPropertyValue target="dmvChartsTests.testBarChart.horizontalAxis" propertyName="maximum" value="24" />
+				<AssertPropertyValue target="dmvChartsTests.testColumnChart.verticalAxis" propertyName="maximum" value="28" />
+			</body>
+		</TestCase>
+	
+		<TestCase testID="DragDropChartTest">
+			<body>
+				
+				<DispatchMouseEvent target="dmvChartsTests.testColumnChart" type="mouseOver" localX="95" localY="258" />
+				<DispatchMouseEvent target="dmvChartsTests.testColumnChart" type="mouseDown" localX="95" localY="258" buttonDown="true" />
+ 				<DispatchMouseEvent target="dmvChartsTests.testColumnChart" type="mouseMove" buttonDown="true" localX="98" localY="270"/>
+
+ 				<DispatchMouseEvent target="dmvChartsTests.testPieChart" type="mouseMove" buttonDown="true" localX="192" localY="181"/>
+ 				<DispatchMouseEvent target="dmvChartsTests.testPieChart" type="mouseUp" localX="192" localY="183" 
+									waitEvent="dragDrop" />
+				<AssertPropertyValue target="dmvChartsTests.testColumnChart.dataProvider" propertyName="length" value="10" />
+				<AssertPropertyValue target="dmvChartsTests.testPieChart.dataProvider" propertyName="length" value="5" />
+				<AssertPropertyValue target="dmvChartsTests.testBarChart.dataProvider" propertyName="length" value="5" />
+
+			</body>
+		</TestCase>
+	</testCases>
+</UnitTester>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/dmv/scripts/ODGTestScript.mxml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/dmv/scripts/ODGTestScript.mxml b/mustella/tests/basicTests/dmv/scripts/ODGTestScript.mxml
new file mode 100644
index 0000000..96bb499
--- /dev/null
+++ b/mustella/tests/basicTests/dmv/scripts/ODGTestScript.mxml
@@ -0,0 +1,54 @@
+<?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 xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" testSWF="main.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>
+
+		<TestCase testID="ODGTest1">
+			<body>
+				<SetProperty target="" propertyName="currentState" value="dmvODGTest" 
+                    waitEvent="updateComplete" />
+				 <AssertPropertyValue target="dmvODGTests.testODG" propertyName="numChildren" value="3" />
+
+			</body>
+		</TestCase>
+
+	</testCases>
+</UnitTester>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/dmv/views/ADGTests.mxml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/dmv/views/ADGTests.mxml b/mustella/tests/basicTests/dmv/views/ADGTests.mxml
new file mode 100644
index 0000000..1865405
--- /dev/null
+++ b/mustella/tests/basicTests/dmv/views/ADGTests.mxml
@@ -0,0 +1,119 @@
+<?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 
+    xmlns:fx="http://ns.adobe.com/mxml/2009"
+    xmlns:s="library://ns.adobe.com/flex/spark"
+    xmlns:mx="library://ns.adobe.com/flex/mx"     
+    initialize="initListComponents()"
+    >
+
+<fx:Script>
+<![CDATA[
+
+    import mx.collections.*;
+    import mx.controls.*;
+    import mx.events.*;
+    import mx.managers.*;
+
+    public var listDP:Array = [
+       { Artist:'Pavement', Album:'Enchanted and Slanted', Price:11.99, Rating:'Excellent' },
+       { Artist:'Pavement', Album:'Rain Crooked, Rain Crooked', Price:10.99, Rating:'Excellent' },
+       { Artist:'Pavement', Album:'Zowee Wowee', Price:12.99, Rating:'Excellent' },
+       { Artist:'Pavement', Album:'Corners the Brighten', Price:11.99, Rating:'Good' },
+       { Artist:'Pavement', Album:'Twilight Terror', Price:11.99, Rating:'Good' },
+       { Artist:'Other', Album:'Other', Price:5.99, Rating:'Bad' }
+               ];
+
+    public var adgDP:Array =
+     [
+       { Artist:'Pavement', Album:'Slanted and Enchanted', Price:11.99, Rating:'Excellent' },
+       { Artist:'Pavement', Album:'Crooked Rain, Crooked Rain', Price:10.99, Rating:'Excellent' },
+       { Artist:'Pavement', Album:'Wowee Zowee', Price:12.99, Rating:'Excellent' },
+       { Artist:'Pavement', Album:'Brighten the Corners', Price:11.99, Rating:'Good' },
+       { Artist:'Pavement', Album:'Terror Twilight', Price:11.99, Rating:'Good' },
+       { Artist:'Other', Album:'Other', Price:5.99, Rating:'Bad' }
+     ];
+     
+     public var treeDP:Array = [ { label: "Inbox", children: [
+                                                    { label: "Personal", data: "personal"},
+                                                    { label: "Marketing", data: "mktg"},
+                                                    { label: "To do", data: "todo"} ]},
+                                                    { label: "Calendar", children: [
+                                                                 { label: "Appointments", data: "appointments"},
+                                                                 { label: "Meetings", data: "meetings"} ]}, 
+                                                    { label: "Sent", data: "sent" },
+                                                    { label: "Deleted Items", data: "deleted" },
+                                                    { label: "Spam", data: "spam" } ];
+
+
+    public function initListComponents():void
+    {
+            testList.dataProvider = listDP;
+            testADG.dataProvider = adgDP;
+            testADG2.dataProvider = new HierarchicalData(treeDP);
+            
+            var gc:GroupingCollection2 = new GroupingCollection2();
+			gc.source = adgDP;
+			var grouping:Grouping = new Grouping();
+			grouping.fields = [new GroupingField("Rating")];
+			gc.grouping = grouping;
+			gc.refresh();
+			
+			testADG3.dataProvider = gc;
+
+    }
+    
+    public function insertItemInADG():void
+    {
+            var c:ICollectionView = ICollectionView(testADG2.dataProvider);
+            var cursor:IViewCursor = c.createCursor();
+            cursor.seek(CursorBookmark.FIRST, 1);
+            cursor.insert({label:'Archive', data:'archive'});
+    }
+
+]]>
+</fx:Script>
+
+    <mx:List id="testList" labelField="Album" dragEnabled="true" dragMoveEnabled="false" />
+
+    <mx:AdvancedDataGrid id="testADG" dropEnabled="true">
+            <mx:columns>
+                        <mx:AdvancedDataGridColumn dataField="Album" headerText="Record" />
+                        <mx:AdvancedDataGridColumn dataField="Price" />
+            </mx:columns>
+    </mx:AdvancedDataGrid>
+    
+    <mx:AdvancedDataGrid id="testADG2">
+            <mx:columns>
+                        <mx:AdvancedDataGridColumn dataField="label" headerText="Label" />
+                        <mx:AdvancedDataGridColumn dataField="data" />
+            </mx:columns>
+    </mx:AdvancedDataGrid>
+
+    <mx:Button id="addNodeButton" label="addNodeAt" click="insertItemInADG()" />
+    
+    <mx:AdvancedDataGrid id="testADG3" displayItemsExpanded="true">
+		<mx:columns>
+			<mx:AdvancedDataGridColumn dataField="Rating" headerText="Rating" />
+			<mx:AdvancedDataGridColumn dataField="Album" />
+		</mx:columns>
+	</mx:AdvancedDataGrid>
+
+</mx:VBox>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1c4ff6c5/mustella/tests/basicTests/dmv/views/ChartsTests.mxml
----------------------------------------------------------------------
diff --git a/mustella/tests/basicTests/dmv/views/ChartsTests.mxml b/mustella/tests/basicTests/dmv/views/ChartsTests.mxml
new file mode 100644
index 0000000..f7a8d99
--- /dev/null
+++ b/mustella/tests/basicTests/dmv/views/ChartsTests.mxml
@@ -0,0 +1,138 @@
+<?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 
+    xmlns:fx="http://ns.adobe.com/mxml/2009"
+    xmlns:s="library://ns.adobe.com/flex/spark"
+    xmlns:mx="library://ns.adobe.com/flex/mx"
+    >
+
+<fx:Script>
+<![CDATA[
+
+    	import mx.collections.*;
+	import mx.events.DragEvent;
+      import mx.managers.DragManager;
+      import mx.core.DragSource;
+      import mx.charts.chartClasses.ChartBase;
+
+
+
+      public function cChartDP():ArrayCollection
+	{
+		var dp:ArrayCollection = new ArrayCollection( [
+            { Date: "25-Jul", open: 18.50,  high: 19, close:18.86},
+            { Date: "26-Jul", open: 19.56,  high: 19.98,  close:11.69},                       
+            { Date: "27-Jul", open: 20.81,  high: 20.99,  close:20.12}, 
+            { Date: "28-Jul", open: 20.70,  high: 21.00,  close:23.84}, 
+            { Date: "29-Jul", open: 21.7,  high: 21.79, close:15.6}, 
+            { Date: "1-Aug", open: 22.45,  high: 22.65, close:21.95},
+            { Date: "2-Aug", open: 22.56,  high: 22.6, close:12.98},
+            { Date: "3-Aug", open: 22.42,  high: 22.70, close:23.63},
+            { Date: "4-Aug", open: 21.67,  high: 22.82, close:26.34},
+            { Date: "5-Aug", open: 22.44,  high: 22.85, close:16.31} ]);
+		return dp;
+	}
+
+	public function bChartDP():ArrayCollection
+	{
+		var dp:ArrayCollection = new ArrayCollection( [
+            { Date: "21-Jul", open: 18.50,  high: 19, close:18.86},
+            { Date: "22-Jul", open: 19.56,  high: 19.98,  close:11.69},                       
+            { Date: "23-Jul", open: 20.81,  high: 20.99,  close:20.12}, 
+            { Date: "24-Jul", open: 20.70,  high: 21.00,  close:23.84}, 
+            { Date: "25-Jul", open: 21.7,  high: 21.79, close:15.6} ]);
+		return dp;
+	}
+ 	
+	public function pChartDP():ArrayCollection
+	{
+		var dp:ArrayCollection = new ArrayCollection( [
+            { Date: "6-Aug", open: 22.45,  high: 22.65, close:21.95},
+            { Date: "7-Aug", open: 22.56,  high: 22.6, close:12.98},
+            { Date: "8-Aug", open: 22.42,  high: 22.70, close:23.63},
+            { Date: "9-Aug", open: 21.67,  high: 22.82, close:26.34} ]);
+		return dp;
+	}
+
+    
+      private function doDragEnter(event:DragEvent):void {
+            var dragInitiator:ChartBase=ChartBase(event.currentTarget);
+            DragManager.acceptDragDrop(dragInitiator);
+      }
+
+      private function doDragOver(event:DragEvent):void {
+            if (event.ctrlKey)
+                DragManager.showFeedback(DragManager.COPY);
+            else if (event.shiftKey)
+                DragManager.showFeedback(DragManager.LINK);
+            else
+                DragManager.showFeedback(DragManager.MOVE);
+      }
+
+      private function doDragDrop(event:DragEvent):void {
+            // Get drop target.
+            var dropTarget:ChartBase=ChartBase(event.currentTarget);
+           
+           // Hide drop feedback.
+           //  doDragExit(event);
+              
+           // Get the dragged items from the drag initiator.
+           var items:Array = event.dragSource.dataForFormat("chartitems") as Array;
+               
+               
+           // Add each item to the drop target.
+           for(var i:uint=0; i < items.length; i++)
+           {
+	           dropTarget.dataProvider.addItem(items[i].item);
+           }
+      }
+
+			
+]]>
+</fx:Script>
+<mx:HBox>
+    <mx:ColumnChart id="testColumnChart" dropEnabled="true" dragEnabled="true" selectionMode="single" dragOver="doDragOver(event)">
+		<mx:horizontalAxis>
+			<mx:CategoryAxis categoryField="Date" />
+		</mx:horizontalAxis>
+            <mx:series>
+                        <mx:ColumnSeries id="series1" yField="open"/>
+                        <mx:ColumnSeries id="series2" yField="close" />
+            </mx:series>
+    </mx:ColumnChart>
+
+	 <mx:BarChart id="testBarChart" dropEnabled="true" dragEnabled="true" selectionMode="single" 
+		dragEnter="doDragEnter(event)" dragDrop="doDragDrop(event)" dragOver="doDragOver(event)">
+		<mx:verticalAxis>
+			<mx:CategoryAxis categoryField="Date" />
+		</mx:verticalAxis>
+            <mx:series>
+                        <mx:BarSeries id="bSeries1" xField="open"/>
+                        <mx:BarSeries id="bSeries2" xField="close" />
+            </mx:series>
+    </mx:BarChart>
+
+</mx:HBox>
+	 <mx:PieChart id="testPieChart" dropEnabled="true" dragEnter="doDragEnter(event)" dragDrop="doDragDrop(event)" dragOver="doDragOver(event)">
+            <mx:series>
+                        <mx:PieSeries field="open"/>
+            </mx:series>
+    </mx:PieChart>
+</mx:VBox>
\ No newline at end of file