You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by pe...@apache.org on 2017/08/30 20:37:13 UTC
[01/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Fix EffectsTimer test
Repository: flex-asjs
Updated Branches:
refs/heads/feature/dragAndDrop 06213a0c1 -> 1b1697a0f
Fix EffectsTimer test
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/7cd30933
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/7cd30933
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/7cd30933
Branch: refs/heads/feature/dragAndDrop
Commit: 7cd3093332caf3d03c5c9eca7a424c9d4f16f953
Parents: bde25eb
Author: greg-dove <gr...@gmail.com>
Authored: Mon Aug 21 17:01:44 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Mon Aug 21 17:01:44 2017 +1200
----------------------------------------------------------------------
manualtests/EffectsExample/src/MyInitialView.mxml | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/7cd30933/manualtests/EffectsExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/EffectsExample/src/MyInitialView.mxml b/manualtests/EffectsExample/src/MyInitialView.mxml
index 74cfafb..19fefe8 100644
--- a/manualtests/EffectsExample/src/MyInitialView.mxml
+++ b/manualtests/EffectsExample/src/MyInitialView.mxml
@@ -28,6 +28,10 @@ limitations under the License.
font-size: 14pt;
font-weight: bold;
}
+
+ global {
+ IEffectTimer: ClassReference("org.apache.flex.utils.EffectTimer");
+ }
</fx:Style>
@@ -78,10 +82,10 @@ limitations under the License.
<js:TextButton text="fade in" click="fadein()" />
</js:Container>
- <js:Container width="500">
- <js:Image id="image1" source="twong.jpg" x="100" y="20" />
+ <js:Container width="500" height="500">
+ <js:Image id="image1" src="twong.jpg" x="100" y="20" />
<js:Label id="caption1" text="Dick" x="100" y="200" />
- <js:Image id="image2" source="jproctor.jpg" x="400" y="20" />
+ <js:Image id="image2" src="jproctor.jpg" x="400" y="20" />
<js:Label id="caption2" text="Jane" x="400" y="200" />
</js:Container>
</js:Container>
[10/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Quick fix for FormExample (avoid 0 width, 0 height clipping)
Posted by pe...@apache.org.
Quick fix for FormExample (avoid 0 width, 0 height clipping)
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/af7f5cd1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/af7f5cd1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/af7f5cd1
Branch: refs/heads/feature/dragAndDrop
Commit: af7f5cd1cd55ff90f1c62c4e309c0b52e9756bbd
Parents: 1fe4d2c
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 11:30:43 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 11:30:43 2017 +1200
----------------------------------------------------------------------
manualtests/FormExample/src/MyFormView.mxml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/af7f5cd1/manualtests/FormExample/src/MyFormView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/FormExample/src/MyFormView.mxml b/manualtests/FormExample/src/MyFormView.mxml
index 190fbe5..6e85f22 100644
--- a/manualtests/FormExample/src/MyFormView.mxml
+++ b/manualtests/FormExample/src/MyFormView.mxml
@@ -47,7 +47,7 @@ limitations under the License.
<js:Label text="Loan Form" className="title" />
- <js:Container width="500">
+ <js:Container width="500" height="600" >
<js:beads>
<js:VerticalColumnLayout numColumns="2" />
</js:beads>
[06/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
quick fix to get compiling and something displaying
Posted by pe...@apache.org.
quick fix to get compiling and something displaying
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a1f60d16
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a1f60d16
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a1f60d16
Branch: refs/heads/feature/dragAndDrop
Commit: a1f60d1603d87419a04bd388dca4d2a542b41462
Parents: 629949e
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 08:19:18 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 08:19:18 2017 +1200
----------------------------------------------------------------------
manualtests/FlexJSTest_SVG/src/SkinsView.mxml | 57 ++++++++++++----------
1 file changed, 30 insertions(+), 27 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a1f60d16/manualtests/FlexJSTest_SVG/src/SkinsView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/FlexJSTest_SVG/src/SkinsView.mxml b/manualtests/FlexJSTest_SVG/src/SkinsView.mxml
index e1a95d3..e0a6f65 100644
--- a/manualtests/FlexJSTest_SVG/src/SkinsView.mxml
+++ b/manualtests/FlexJSTest_SVG/src/SkinsView.mxml
@@ -18,7 +18,10 @@ limitations under the License.
-->
<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
- xmlns:js="library://ns.apache.org/flexjs/basic" xmlns:skins="skins.*" xmlns:mx="library://ns.adobe.com/flex/mx"
+ xmlns:js="library://ns.apache.org/flexjs/basic"
+ xmlns:svg="org.apache.flex.svg.*"
+ xmlns:graphics="org.apache.flex.graphics.*"
+ xmlns:skins="skins.*" xmlns:mx="library://ns.adobe.com/flex/mx"
initComplete="viewbase1_initCompleteHandler(event)">
<fx:Script>
<![CDATA[
@@ -71,35 +74,35 @@ limitations under the License.
<!--<js:beads>
<js:ViewDataBinding />
</js:beads>-->
- <js:Container x="0" y="0" >
- <js:Label text="MyButton" x="20" y="10" includeIn="{[up,down,over,disabled]}" selectable="true"/>
+ <js:Container x="0" y="0" width="500" height="500">
+ <js:Label text="MyButton" x="20" y="10" includeIn="{[up,down,over,disabled]}" />
- <js:Rect id="fill_up" width="100" height="30" includeIn="up" >
- <js:stroke>
- <js:SolidColorStroke alpha="1.0" color="#000000" />
- </js:stroke>
- <js:fill>
- <js:SolidColor color="#1ABC9C" alpha="1.0" />
- </js:fill>
- </js:Rect>
+ <svg:Rect id="fill_up" width="100" height="30" includeIn="up" >
+ <svg:stroke>
+ <graphics:SolidColorStroke alpha="1.0" color="#000000" />
+ </svg:stroke>
+ <svg:fill>
+ <graphics:SolidColor color="#1ABC9C" alpha="1.0" />
+ </svg:fill>
+ </svg:Rect>
- <js:Rect id="fill_over" width="100" height="30" includeIn="over">
- <js:stroke>
- <js:SolidColorStroke alpha="1.0" color="#000000" lineDash="{dashArray}" weight="5" lineJoin="round"/>
- </js:stroke>
- <js:fill>
- <js:SolidColor color="#48C9B0" alpha="1.0" />
- </js:fill>
- </js:Rect>
+ <svg:Rect id="fill_over" width="100" height="30" includeIn="over">
+ <svg:stroke>
+ <graphics:SolidColorStroke alpha="1.0" color="#000000" lineDash="{dashArray}" weight="5" lineJoin="round"/>
+ </svg:stroke>
+ <svg:fill>
+ <graphics:SolidColor color="#48C9B0" alpha="1.0" />
+ </svg:fill>
+ </svg:Rect>
- <js:Rect id="fill_down" width="100" height="30" includeIn="down">
- <js:stroke>
- <js:SolidColorStroke alpha="1.0" color="#000000" />
- </js:stroke>
- <js:fill>
- <js:SolidColor color="#16A085" alpha="1.0" />
- </js:fill>
- </js:Rect>
+ <svg:Rect id="fill_down" width="100" height="30" includeIn="down">
+ <svg:stroke>
+ <graphics:SolidColorStroke alpha="1.0" color="#000000" />
+ </svg:stroke>
+ <svg:fill>
+ <graphics:SolidColor color="#16A085" alpha="1.0" />
+ </svg:fill>
+ </svg:Rect>
<js:TextButton x="50" y="100" text="Just a button"/>
</js:Container>
[20/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Partially fixed FormatExample
Posted by pe...@apache.org.
Partially fixed FormatExample
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/e17b287c
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/e17b287c
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/e17b287c
Branch: refs/heads/feature/dragAndDrop
Commit: e17b287c15d2bde12bf9cfe86050aa1fb8e5f499
Parents: f0ddbd3
Author: Harbs <ha...@in-tools.com>
Authored: Tue Aug 22 11:12:29 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Tue Aug 22 11:12:29 2017 +0300
----------------------------------------------------------------------
manualtests/FormatExample/src/MyFormView.mxml | 2 +-
.../apache/flex/html/staticControls/accessories/NumberFormatter.as | 2 +-
.../flex/html/staticControls/accessories/PhoneNumberFormatter.as | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e17b287c/manualtests/FormatExample/src/MyFormView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/FormatExample/src/MyFormView.mxml b/manualtests/FormatExample/src/MyFormView.mxml
index d513fcb..f31ca97 100644
--- a/manualtests/FormatExample/src/MyFormView.mxml
+++ b/manualtests/FormatExample/src/MyFormView.mxml
@@ -21,7 +21,7 @@ limitations under the License.
xmlns:js="library://ns.apache.org/flexjs/basic"
xmlns:local="*"
xmlns:models="models.*"
- xmlns:acc="org.apache.flex.html.accessories.*">
+ xmlns:acc="org.apache.flex.html.staticControls.accessories.*">
<fx:Style>
.title {
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e17b287c/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/NumberFormatter.as
----------------------------------------------------------------------
diff --git a/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/NumberFormatter.as b/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/NumberFormatter.as
index 0d1b613..58ffad1 100644
--- a/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/NumberFormatter.as
+++ b/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/NumberFormatter.as
@@ -16,7 +16,7 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.flex.html.accessories
+package org.apache.flex.html.staticControls.accessories
{
import org.apache.flex.core.IBeadModel;
import org.apache.flex.core.IFormatBead;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e17b287c/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/PhoneNumberFormatter.as
----------------------------------------------------------------------
diff --git a/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/PhoneNumberFormatter.as b/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/PhoneNumberFormatter.as
index 7523c96..4231bce 100644
--- a/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/PhoneNumberFormatter.as
+++ b/manualtests/FormatExample/src/org/apache/flex/html/staticControls/accessories/PhoneNumberFormatter.as
@@ -16,7 +16,7 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.flex.html.accessories
+package org.apache.flex.html.staticControls.accessories
{
import org.apache.flex.core.IBead;
import org.apache.flex.core.IBeadModel;
[18/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Fixed TLFEditTestFlexJS manual test
Posted by pe...@apache.org.
Fixed TLFEditTestFlexJS manual test
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/ebc568a7
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/ebc568a7
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/ebc568a7
Branch: refs/heads/feature/dragAndDrop
Commit: ebc568a7eb4494e4e9e689f184b7f6082a047ac2
Parents: 932f7cb
Author: Harbs <ha...@in-tools.com>
Authored: Tue Aug 22 10:36:39 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Tue Aug 22 10:36:39 2017 +0300
----------------------------------------------------------------------
manualtests/TLFEditTestFlexJS/build.xml | 1 +
1 file changed, 1 insertion(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ebc568a7/manualtests/TLFEditTestFlexJS/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/TLFEditTestFlexJS/build.xml b/manualtests/TLFEditTestFlexJS/build.xml
index 24985be..f1abc29 100644
--- a/manualtests/TLFEditTestFlexJS/build.xml
+++ b/manualtests/TLFEditTestFlexJS/build.xml
@@ -29,6 +29,7 @@
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
+ <property name="optional_arg" value="-remove-circulars" />
<include file="${basedir}/../build_example.xml" />
[05/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Update doc for MDL Dialog
Posted by pe...@apache.org.
Update doc for MDL Dialog
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/10163b76
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/10163b76
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/10163b76
Branch: refs/heads/feature/dragAndDrop
Commit: 10163b7662f63e58c804c261a48c367222049bc9
Parents: 2ce4db3
Author: piotrz <pi...@apache.org>
Authored: Mon Aug 21 21:59:44 2017 +0200
Committer: piotrz <pi...@apache.org>
Committed: Mon Aug 21 21:59:44 2017 +0200
----------------------------------------------------------------------
.../src/main/flex/org/apache/flex/mdl/Dialog.as | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/10163b76/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Dialog.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Dialog.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Dialog.as
index 0b2c60a..1f08069 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Dialog.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Dialog.as
@@ -122,7 +122,7 @@ package org.apache.flex.mdl
}
/**
- * show modal dialog
+ * Displays the dialog element and makes it the top-most modal dialog.
*
* @langversion 3.0
* @playerversion Flash 10.2
@@ -140,9 +140,10 @@ package org.apache.flex.mdl
}
/**
- * show dialog.
+ * Displays the dialog element.
+ *
* Note: It seems MDL does not support non modal dialogs, since there's no examples
- * and dialogs are always added to "document.body" We could study change this.
+ * and dialogs are always added to "document.body".
*
* @langversion 3.0
* @playerversion Flash 10.2
@@ -160,7 +161,7 @@ package org.apache.flex.mdl
}
/**
- * close dialog
+ * Closes the dialog element.
*
* @langversion 3.0
* @playerversion Flash 10.2
[23/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
FLEX-35354 - Add DynamicItemsRendererFactoryForArrayListData to allow add
items dynamically to MDL Table - Bead can be used in other components -
Update TabsItemRendererFactoryForArrayLis
Posted by pe...@apache.org.
FLEX-35354 - Add DynamicItemsRendererFactoryForArrayListData to allow add items dynamically to MDL Table - Bead can be used in other components
- Update TabsItemRendererFactoryForArrayListData with new DynamicItemsRendererFactoryForArrayListData
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/56e467a1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/56e467a1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/56e467a1
Branch: refs/heads/feature/dragAndDrop
Commit: 56e467a1db22e644c4917b9b012291b94e1f3054
Parents: 29bef6b
Author: piotrz <pi...@apache.org>
Authored: Wed Aug 23 23:43:48 2017 +0200
Committer: piotrz <pi...@apache.org>
Committed: Wed Aug 23 23:43:48 2017 +0200
----------------------------------------------------------------------
.../Basic/src/main/flex/BasicClasses.as | 1 +
...namicItemsRendererFactoryForArrayListData.as | 200 +++++++++++++++++++
.../Basic/src/main/resources/basic-manifest.xml | 1 +
3 files changed, 202 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/56e467a1/frameworks/projects/Basic/src/main/flex/BasicClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/BasicClasses.as b/frameworks/projects/Basic/src/main/flex/BasicClasses.as
index 539beaa..697efa8 100644
--- a/frameworks/projects/Basic/src/main/flex/BasicClasses.as
+++ b/frameworks/projects/Basic/src/main/flex/BasicClasses.as
@@ -158,6 +158,7 @@ internal class BasicClasses
import org.apache.flex.html.beads.layouts.TileLayout; TileLayout;
import org.apache.flex.html.beads.TextItemRendererFactoryForArrayData; TextItemRendererFactoryForArrayData;
import org.apache.flex.html.beads.DataItemRendererFactoryForArrayData; DataItemRendererFactoryForArrayData;
+ import org.apache.flex.html.beads.DynamicItemsRendererFactoryForArrayListData; DynamicItemsRendererFactoryForArrayListData;
import org.apache.flex.html.beads.DataItemRendererFactoryForArrayList; DataItemRendererFactoryForArrayList;
import org.apache.flex.html.beads.DataItemRendererFactoryForHierarchicalData; DataItemRendererFactoryForHierarchicalData;
import org.apache.flex.html.supportClasses.DataGroup; DataGroup;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/56e467a1/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DynamicItemsRendererFactoryForArrayListData.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DynamicItemsRendererFactoryForArrayListData.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DynamicItemsRendererFactoryForArrayListData.as
new file mode 100644
index 0000000..6ccd952
--- /dev/null
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/DynamicItemsRendererFactoryForArrayListData.as
@@ -0,0 +1,200 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.html.beads
+{
+ import org.apache.flex.collections.IArrayList;
+ import org.apache.flex.core.IBead;
+ import org.apache.flex.core.IDataProviderItemRendererMapper;
+ import org.apache.flex.core.IItemRendererClassFactory;
+ import org.apache.flex.core.IItemRendererParent;
+ import org.apache.flex.core.IListPresentationModel;
+ import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.SimpleCSSStyles;
+ import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.ValuesManager;
+ import org.apache.flex.events.CollectionEvent;
+
+ import org.apache.flex.events.EventDispatcher;
+ import org.apache.flex.events.IEventDispatcher;
+ import org.apache.flex.html.beads.IListView;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.core.ISelectableItemRenderer;
+ import org.apache.flex.core.ISelectionModel;
+
+ [Event(name="itemRendererCreated",type="org.apache.flex.events.ItemRendererEvent")]
+
+ /**
+ * The DynamicItemsRendererFactoryForArrayListData class reads an
+ * array of data and creates an item renderer for every
+ * ISelectableItemRenderer in the array.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.9
+ */
+ public class DynamicItemsRendererFactoryForArrayListData extends EventDispatcher implements IBead, IDataProviderItemRendererMapper
+ {
+ public function DynamicItemsRendererFactoryForArrayListData(target:Object = null)
+ {
+ super(target);
+ }
+
+ protected var dataProviderModel:ISelectionModel;
+
+ protected var labelField:String;
+
+ protected var _strand:IStrand;
+
+ /**
+ * @copy org.apache.flex.core.IBead#strand
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function set strand(value:IStrand):void
+ {
+ _strand = value;
+ IEventDispatcher(value).addEventListener("initComplete", initComplete);
+ }
+
+ /**
+ * finish setup
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected function initComplete(event:Event):void
+ {
+ IEventDispatcher(_strand).removeEventListener("initComplete", initComplete);
+
+ dataProviderModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel;
+ var listView:IListView = _strand.getBeadByType(IListView) as IListView;
+ dataGroup = listView.dataGroup;
+ dataProviderModel.addEventListener("dataProviderChanged", dataProviderChangeHandler);
+ dataProviderModel.addEventListener(CollectionEvent.ITEM_ADDED, itemAddedHandler);
+
+ labelField = dataProviderModel.labelField;
+
+ dataProviderChangeHandler(null);
+ }
+
+ private var _itemRendererFactory:IItemRendererClassFactory;
+
+ /**
+ * The org.apache.flex.core.IItemRendererClassFactory used
+ * to generate instances of item renderers.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public function get itemRendererFactory():IItemRendererClassFactory
+ {
+ if (_itemRendererFactory == null) {
+ var factory:IItemRendererClassFactory = _strand.getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;
+ if (factory == null) {
+ factory = new (ValuesManager.valuesImpl.getValue(_strand, "iItemRendererClassFactory")) as IItemRendererClassFactory;
+ _strand.addBead(factory);
+ }
+ _itemRendererFactory = factory;
+ }
+ return _itemRendererFactory;
+ }
+
+ /**
+ * @private
+ */
+ public function set itemRendererFactory(value:IItemRendererClassFactory):void
+ {
+ _itemRendererFactory = value;
+ }
+
+ /**
+ * The org.apache.flex.core.IItemRendererParent that will
+ * parent the item renderers.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ protected var dataGroup:IItemRendererParent;
+
+ protected function dataProviderChangeHandler(event:Event):void
+ {
+ var dp:IArrayList = dataProviderModel.dataProvider as IArrayList;
+ if (!dp)
+ return;
+
+ dataGroup.removeAllItemRenderers();
+
+ var presentationModel:IListPresentationModel = _strand.getBeadByType(IListPresentationModel) as IListPresentationModel;
+
+ var n:int = dp.length;
+ for (var i:int = 0; i < n; i++)
+ {
+ var ir:ISelectableItemRenderer = itemRendererFactory.createItemRenderer(dataGroup) as ISelectableItemRenderer;
+ var item:Object = dp.getItemAt(i);
+ fillRenderer(i, item, ir, presentationModel);
+ }
+
+ IEventDispatcher(_strand).dispatchEvent(new Event("itemsCreated"));
+ }
+
+ protected function itemAddedHandler(event:CollectionEvent):void
+ {
+ var dp:IArrayList = dataProviderModel.dataProvider as IArrayList;
+ if (!dp)
+ return;
+
+ var presentationModel:IListPresentationModel = _strand.getBeadByType(IListPresentationModel) as IListPresentationModel;
+ var ir:ISelectableItemRenderer = itemRendererFactory.createItemRenderer(dataGroup) as ISelectableItemRenderer;
+
+ fillRenderer(dp.length - 1, event.item, ir, presentationModel);
+
+ IEventDispatcher(_strand).dispatchEvent(new Event("itemsCreated"));
+ }
+
+ protected function fillRenderer(index:int,
+ item:Object,
+ itemRenderer:ISelectableItemRenderer,
+ presentationModel:IListPresentationModel):void
+ {
+ dataGroup.addItemRenderer(itemRenderer);
+
+ itemRenderer.index = index;
+ itemRenderer.labelField = labelField;
+
+ if (presentationModel) {
+ var style:SimpleCSSStyles = new SimpleCSSStyles();
+ style.marginBottom = presentationModel.separatorThickness;
+ UIBase(itemRenderer).style = style;
+ UIBase(itemRenderer).height = presentationModel.rowHeight;
+ UIBase(itemRenderer).percentWidth = 100;
+ }
+ itemRenderer.data = item;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/56e467a1/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
index a07fc40..0ed5f4c 100644
--- a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
@@ -141,6 +141,7 @@
<component id="DataItemRendererFactoryForArrayData" class="org.apache.flex.html.beads.DataItemRendererFactoryForArrayData" />
<component id="DataItemRendererFactoryForArrayList" class="org.apache.flex.html.beads.DataItemRendererFactoryForArrayList" />
+ <component id="DynamicItemsRendererFactoryForArrayListData" class="org.apache.flex.html.beads.DynamicItemsRendererFactoryForArrayListData" />
<component id="DataItemRendererFactoryForHierarchicalData" class="org.apache.flex.html.beads.DataItemRendererFactoryForHierarchicalData" />
<component id="TextItemRendererFactoryForArrayData" class="org.apache.flex.html.beads.TextItemRendererFactoryForArrayData" />
<component id="TextItemRendererFactoryForStringVectorData" class="org.apache.flex.html.beads.TextItemRendererFactoryForStringVectorData" />
[16/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Added maven build for UnitTests
Posted by pe...@apache.org.
Added maven build for UnitTests
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f51fcadc
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f51fcadc
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f51fcadc
Branch: refs/heads/feature/dragAndDrop
Commit: f51fcadc60c681f2abb94a3b3d17cedd25b04a81
Parents: 523eac2
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 11:34:37 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 11:34:37 2017 +1200
----------------------------------------------------------------------
manualtests/UnitTests/pom.xml | 172 +++++++++++++++++++++++++++++++++++++
manualtests/pom.xml | 170 ++++++++++++++++++++++++++++++++++++
2 files changed, 342 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f51fcadc/manualtests/UnitTests/pom.xml
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/pom.xml b/manualtests/UnitTests/pom.xml
new file mode 100644
index 0000000..315291b
--- /dev/null
+++ b/manualtests/UnitTests/pom.xml
@@ -0,0 +1,172 @@
+<?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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.flex.flexjs.manualtests</groupId>
+ <artifactId>manualtests</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>UnitTests</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <packaging>swf</packaging>
+ <name>Apache Flex - FlexJS: ManualTests: UnitTests</name>
+
+ <properties>
+ <title>${project.artifactId}</title>
+ <bgcolor>#ffffff</bgcolor>
+ <useBrowserHistory>--</useBrowserHistory>
+ <version_major>11</version_major>
+ <version_minor>1</version_minor>
+ <version_revision>0</version_revision>
+ <expressInstallSwf>expressInstall.swf</expressInstallSwf>
+ <application>${project.artifactId}</application>
+ <swf>${project.artifactId}</swf>
+ <width>100%</width>
+ <height>100%</height>
+ </properties>
+
+ <build>
+ <defaultGoal>compile</defaultGoal>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.flex.flexjs.compiler</groupId>
+ <artifactId>flexjs-maven-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <targets>SWF</targets>
+ <mainClass>${project.artifactId}.mxml</mainClass>
+ <debug>true</debug>
+ <additionalCompilerOptions>-keep-as3-metadata+=Test,BeforeClass,AfterClass,Before,After,TestVariance,Event,Bindable,TestMeta -keep-code-with-metadata=Test,BeforeClass,AfterClass,Before,After,TestVariance,TestMeta</additionalCompilerOptions>
+ <outputDirectory>${basedir}/target/bin-debug</outputDirectory>
+ <flashOutputFileName>${project.artifactId}.swf</flashOutputFileName>
+ </configuration>
+ <executions>
+ <execution>
+ <id>compile-js</id>
+ <phase>process-sources</phase>
+ <goals>
+ <goal>compile-app</goal>
+ </goals>
+ <configuration>
+ <targets>JSFlex</targets>
+ <mainClass>${project.artifactId}.mxml</mainClass>
+ <debug>false</debug>
+ <additionalCompilerOptions>-keep-as3-metadata+=Test,BeforeClass,AfterClass,Before,After,TestVariance,Event,Bindable,TestMeta -keep-code-with-metadata=Test,BeforeClass,AfterClass,Before,After,TestVariance,TestMeta</additionalCompilerOptions>
+ <outputDirectory>${basedir}/target</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>3.0.2</version>
+ <executions>
+ <execution>
+ <id>copy-template-swf</id>
+ <phase>compile</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${basedir}/target/bin-debug</outputDirectory>
+ <includeEmptyDirs>true</includeEmptyDirs>
+ <resources>
+ <resource>
+ <directory>${FLEXJS_HOME}/templates/swfobject</directory>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>com.coderplus.maven.plugins</groupId>
+ <artifactId>copy-rename-maven-plugin</artifactId>
+ <version>1.0.1</version>
+ <executions>
+ <execution>
+ <id>rename-file</id>
+ <phase>compile</phase>
+ <goals>
+ <goal>rename</goal>
+ </goals>
+ <configuration>
+ <sourceFile>${basedir}/target/bin-debug/index.template.html</sourceFile>
+ <destinationFile>${basedir}/target/bin-debug/${project.artifactId}.html</destinationFile>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+
+ <!--<plugin>
+ <groupId>com.google.code.maven-replacer-plugin</groupId>
+ <artifactId>replacer</artifactId>
+ <version>1.5.2</version>
+ <executions>
+ <execution>
+ <id>configure-swf-template</id>
+ <phase>compile</phase>
+ <goals>
+ <goal>replace</goal>
+ </goals>
+ <configuration>
+ <file>${basedir}/bin-debug/index.template.html</file>
+ <regex>false</regex>
+ <replacements>
+
+ </replacements>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>-->
+ </plugins>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>com.adobe.flash.framework</groupId>
+ <artifactId>playerglobal</artifactId>
+ <version>${flash.version}</version>
+ <type>swc</type>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Reflection</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>swf</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Reflection</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f51fcadc/manualtests/pom.xml
----------------------------------------------------------------------
diff --git a/manualtests/pom.xml b/manualtests/pom.xml
new file mode 100644
index 0000000..dcfdb5f
--- /dev/null
+++ b/manualtests/pom.xml
@@ -0,0 +1,170 @@
+<?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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>flexjs-framework-parent</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <relativePath />
+ </parent>
+
+ <groupId>org.apache.flex.flexjs.manualtests</groupId>
+ <artifactId>manualtests</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <properties>
+ <compiler.output-dir>${basedir}/target/javascript/bin/js-debug</compiler.output-dir>
+ </properties>
+ <name>Apache Flex - FlexJS: ManualTests</name>
+
+ <modules>
+ <module>UnitTests</module>
+ </modules>
+
+ <build>
+ <defaultGoal>compile</defaultGoal>
+ <sourceDirectory>src/main/flex</sourceDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ <pluginManagement>
+ <plugins>
+ <!-- Copy the resources to the compiler output directory -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>3.0.1</version>
+ <configuration>
+ <outputDirectory>${compiler.output-dir}</outputDirectory>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.flex.flexjs.compiler</groupId>
+ <artifactId>flexjs-maven-plugin</artifactId>
+ <version>${flexjs.compiler.version}</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <plugins/>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Core</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>swf</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Core</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Language</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>swf</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Language</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>HTML</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>swf</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>HTML</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Collections</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>swf</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Collections</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Binding</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>swf</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Binding</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Graphics</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>swf</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>Graphics</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ </dependencies>
+ <profiles>
+ <profile>
+ <id>release</id>
+ <properties>
+ <compiler.debug>false</compiler.debug>
+ <compiler.output-dir>${basedir}/target/javascript/bin/js-release</compiler.output-dir>
+ </properties>
+ </profile>
+ </profiles>
+</project>
[31/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs
into develop
Posted by pe...@apache.org.
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs into develop
* 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs:
Add MDLDynamicTableExample to ilustrate how add/remove items to MDL Table - Currently only adding is working. The rest job will be done as part of FLEX-35354
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/641f74c0
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/641f74c0
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/641f74c0
Branch: refs/heads/feature/dragAndDrop
Commit: 641f74c044e44e229d5965a8a8cde27dd14c9b7e
Parents: 884826e 885e321
Author: Harbs <ha...@in-tools.com>
Authored: Mon Aug 28 12:55:10 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Mon Aug 28 12:55:10 2017 +0300
----------------------------------------------------------------------
examples/flexjs/MDLDynamicTableExample/pom.xml | 74 ++++++++++++++++++++
.../src/MDLDynamicTableExample.mxml | 36 ++++++++++
.../MDLDynamicTableExample/src/MainView.mxml | 65 +++++++++++++++++
.../CustomTableRowItemRenderer.mxml | 46 ++++++++++++
.../src/models/UserListModel.as | 37 ++++++++++
.../src/resources/mdl-js-index-template.html | 33 +++++++++
.../src/resources/mdl-styles.css | 31 ++++++++
.../MDLDynamicTableExample/src/vo/UserVO.as | 40 +++++++++++
examples/flexjs/pom.xml | 1 +
9 files changed, 363 insertions(+)
----------------------------------------------------------------------
[27/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Returns parameter passed into setAttribute and setChild to enable chained
assignment of values.
Posted by pe...@apache.org.
Returns parameter passed into setAttribute and setChild to enable chained assignment of values.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f19d9674
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f19d9674
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f19d9674
Branch: refs/heads/feature/dragAndDrop
Commit: f19d96742f05669f48d9587de6afa2d96e795cc0
Parents: f4276e0
Author: Harbs <ha...@in-tools.com>
Authored: Sun Aug 27 10:47:48 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Sun Aug 27 10:47:48 2017 +0300
----------------------------------------------------------------------
frameworks/projects/XML/src/main/flex/XML.as | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f19d9674/frameworks/projects/XML/src/main/flex/XML.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/XML/src/main/flex/XML.as b/frameworks/projects/XML/src/main/flex/XML.as
index 054682e..cf3d9ea 100644
--- a/frameworks/projects/XML/src/main/flex/XML.as
+++ b/frameworks/projects/XML/src/main/flex/XML.as
@@ -1808,7 +1808,7 @@ package
return false;
}
- public function setAttribute(attr:*,value:String):void
+ public function setAttribute(attr:*,value:String):String
{
var i:int;
if(!_attributes)
@@ -1823,7 +1823,7 @@ package
if(_attributes[i].name().equals(attr.name()))
{
_attributes[i].setValue(value);
- return;
+ return value;
}
//addChild(_att)
}
@@ -1831,7 +1831,7 @@ package
attr.setValue(value);
addChild(attr);
}
- return;
+ return value;
}
if(attr.indexOf("xmlns") == 0)
@@ -1857,13 +1857,13 @@ package
if(_attributes[i].name().equals(attrXML.name()))
{
_attributes[i].setValue(value);
- return;
+ return value;
}
//addChild(_att)
}
addChild(attrXML);
}
-
+ return value;
}
/**
* Replaces the child properties of the XML object with the specified name with the specified XML or XMLList.
@@ -1873,7 +1873,7 @@ package
* @return
*
*/
- public function setChild(elementName:*, elements:Object):void
+ public function setChild(elementName:*, elements:Object):Object
{
/*
@@ -1943,6 +1943,7 @@ package
var i:int;
var len:int;
var chld:XML;
+ var retVal:Object = elements;
// I'm not wure that this a strict interpretation of the spec but I think this does the "right thing".
var childType:String = typeof elements;
@@ -1996,6 +1997,7 @@ package
}
//what to do if it's not XML or XMLList? Throw an error? Ignore?
+ return retVal;
}
/**
[32/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Merge branch 'develop' into feature/dragAndDrop
Posted by pe...@apache.org.
Merge branch 'develop' into feature/dragAndDrop
* develop: (24 commits)
Allow chained assignment to non-existent children
Add MDLDynamicTableExample to ilustrate how add/remove items to MDL Table - Currently only adding is working. The rest job will be done as part of FLEX-35354
Forgot header
Returns parameter passed into setAttribute and setChild to enable chained assignment of values.
Added missing pieces for TextBlock management Fixed bug in GroupElement.replaceElements()
Added helper function
FLEX-35354 - Rename TabsItemRendererFactoryForArrayListData to TabsDynamicItemsRendererFactoryForArrayListData - Update TabsDynamicItemsRendererFactoryForArrayListData with new implementation of DynamicItemsRendererFactoryForArrayListData - Update example MDLDynamicTabsExample
FLEX-35354 - Add DynamicItemsRendererFactoryForArrayListData to allow add items dynamically to MDL Table - Bead can be used in other components - Update TabsItemRendererFactoryForArrayListData with new DynamicItemsRendererFactoryForArrayListData
Switch MDLDynamicTabsExample to JSFlex only build in Maven
“Stringables” should be assignable to XML
Partially fixed FormatExample
Fixed a few errors in DataGridXcompile
Fixed TLFEditTestFlexJS manual test
Added maven build for UnitTests
-refactored ant builds of manual tests to be closer to examples, and support for 'maven_compat' from test level ant scripts. -renamed GenericTests to UnitTests and fixed some display issues due to layout changes etc
Quick fix for FormExample (avoid 0 width, 0 height clipping)
Quick fix for ListsTest
Quick fix for ImageTest
FLEX-35350 - THead and TBody need to be created a bit early cause MDL complaining with NPE when dataProvider is null
quick fix to get compiling and something displaying
...
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/1b1697a0
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/1b1697a0
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/1b1697a0
Branch: refs/heads/feature/dragAndDrop
Commit: 1b1697a0f65c0fccea58726bf9c6cb23121da849
Parents: 06213a0 641f74c
Author: Peter Ent <pe...@apache.org>
Authored: Wed Aug 30 16:27:51 2017 -0400
Committer: Peter Ent <pe...@apache.org>
Committed: Wed Aug 30 16:27:51 2017 -0400
----------------------------------------------------------------------
examples/flexjs/MDLDynamicTableExample/pom.xml | 74 +++
.../src/MDLDynamicTableExample.mxml | 36 ++
.../MDLDynamicTableExample/src/MainView.mxml | 65 +++
.../CustomTableRowItemRenderer.mxml | 46 ++
.../src/models/UserListModel.as | 37 ++
.../src/resources/mdl-js-index-template.html | 33 ++
.../src/resources/mdl-styles.css | 31 +
.../MDLDynamicTableExample/src/vo/UserVO.as | 40 ++
examples/flexjs/MDLDynamicTabsExample/pom.xml | 18 +-
.../src/main/flex/views/InitialView.mxml | 24 +-
.../src/main/resources/mdl-styles.css | 2 +-
examples/flexjs/pom.xml | 1 +
.../Basic/src/main/flex/BasicClasses.as | 5 +
.../org/apache/flex/html/ToggleTextButton.as | 25 +-
.../org/apache/flex/html/addElementToWrapper.as | 38 ++
...namicItemsRendererFactoryForArrayListData.as | 200 +++++++
.../html/beads/layouts/VerticalFlexLayout.as | 1 +
.../html/supportClasses/PanelLayoutProxy.as | 27 +
.../Basic/src/main/resources/basic-manifest.xml | 1 +
.../src/main/flex/MDLClasses.as | 2 +-
.../src/main/flex/org/apache/flex/mdl/Dialog.as | 9 +-
.../src/main/flex/org/apache/flex/mdl/Table.as | 26 +-
...namicItemsRendererFactoryForArrayListData.as | 108 ++++
.../TabsItemRendererFactoryForArrayListData.as | 206 -------
.../org/apache/flex/mdl/beads/views/TabsView.as | 6 +-
.../src/main/resources/defaults.css | 4 +-
.../apache/flex/text/engine/ContentElement.as | 25 +-
.../org/apache/flex/text/engine/GroupElement.as | 21 +-
.../org/apache/flex/text/engine/ITextBlock.as | 3 +
.../flex/org/apache/flex/text/html/TextBlock.as | 4 +
frameworks/projects/XML/src/main/flex/XML.as | 33 +-
.../projects/XML/src/main/flex/XMLList.as | 31 +-
manualtests/BubbleTest/build.xml | 44 +-
manualtests/ContainerTest/build.xml | 40 +-
manualtests/CursorTest/build.xml | 44 +-
manualtests/DataBindingTestbed/build.xml | 41 +-
manualtests/DataGridXcompile/build.xml | 39 +-
.../html/customControls/beads/DataGridView.as | 8 +
.../html/staticControls/beads/BoxGridView.as | 10 +-
manualtests/DateChooserExample/build.xml | 38 +-
manualtests/EffectsExample/build.xml | 43 +-
.../EffectsExample/src/MyInitialView.mxml | 10 +-
manualtests/FlexJSTest_HTML5/build.xml | 36 +-
manualtests/FlexJSTest_Panel/build.xml | 35 +-
manualtests/FlexJSTest_SVG/build.xml | 37 +-
manualtests/FlexJSTest_SVG/src/SkinsView.mxml | 57 +-
manualtests/FlexJSTest_basic/build.xml | 36 +-
manualtests/FlexJSTest_createjs/build.xml | 41 +-
manualtests/FlexJSTest_jquery/build.xml | 38 +-
manualtests/FormExample/build.xml | 45 +-
manualtests/FormExample/src/MyFormView.mxml | 2 +-
manualtests/FormatExample/build.xml | 43 +-
manualtests/FormatExample/src/MyFormView.mxml | 2 +-
.../accessories/NumberFormatter.as | 2 +-
.../accessories/PhoneNumberFormatter.as | 2 +-
manualtests/GenericTests/build.xml | 76 ---
manualtests/GenericTests/src/GenericTests.mxml | 39 --
manualtests/GenericTests/src/MyInitialView.mxml | 193 -------
manualtests/GenericTests/src/README.txt | 61 --
manualtests/GenericTests/src/TestClasses.as | 37 --
.../src/flexUnitTests/CoreTester.as | 43 --
.../src/flexUnitTests/JiraIssuesTester.as | 29 -
.../src/flexUnitTests/ObservedBugsTester.as | 33 --
.../src/flexUnitTests/ReflectionTester.as | 38 --
.../flexUnitTests/core/BinaryDataTesterTest.as | 567 -------------------
.../src/flexUnitTests/core/StrandTesterTest.as | 55 --
.../src/flexUnitTests/jira/JiraTesterTest.as | 73 ---
.../observedbugs/ObservedBugTests.as | 101 ----
.../reflection/ReflectionTesterTest.as | 373 ------------
.../reflection/ReflectionTesterTestAlias.as | 90 ---
.../reflection/ReflectionTesterTestUseCache.as | 93 ---
.../reflection/support/ITestInterface.as | 27 -
.../reflection/support/ITestInterface2.as | 29 -
.../reflection/support/ITestInterface3.as | 27 -
.../reflection/support/ITestInterface4.as | 29 -
.../reflection/support/TestClass1.as | 91 ---
.../reflection/support/TestClass2.as | 103 ----
.../reflection/support/TestClass3.as | 39 --
.../reflection/support/TestClass4.as | 95 ----
.../src/flexunit/framework/Assert.as | 305 ----------
.../flexunit/framework/AssertionFailedError.as | 39 --
.../src/testshim/FlexJSUnitTestRunner.as | 186 ------
.../GenericTests/src/testshim/TestResult.as | 56 --
.../GenericTests/testsview/image/Flex.png | Bin 3526 -> 0 bytes
manualtests/GenericTests/testsview/index.html | 128 -----
manualtests/ImageTest/build.xml | 37 +-
manualtests/ImageTest/src/MyInitialView.mxml | 8 +-
manualtests/LanguageTests/build.xml | 37 +-
manualtests/ListsTest/build.xml | 35 +-
.../src/products/ProductItemRenderer.as | 2 +-
manualtests/ProxyTest/build.xml | 38 +-
manualtests/ReflectionTest/build.xml | 38 +-
manualtests/RollEventsTest/build.xml | 37 +-
manualtests/TLFEditTestFlexJS/build.xml | 37 +-
manualtests/UnitTests/README.txt | 61 ++
manualtests/UnitTests/build.xml | 58 ++
manualtests/UnitTests/pom.xml | 172 ++++++
manualtests/UnitTests/src/README.txt | 61 ++
.../src/main/config/compile-app-config.xml | 25 +
.../UnitTests/src/main/flex/MyInitialView.mxml | 190 +++++++
manualtests/UnitTests/src/main/flex/README.txt | 61 ++
.../UnitTests/src/main/flex/TestClasses.as | 37 ++
.../UnitTests/src/main/flex/UnitTests.mxml | 39 ++
.../src/main/flex/flexUnitTests/CoreTester.as | 43 ++
.../main/flex/flexUnitTests/JiraIssuesTester.as | 29 +
.../flex/flexUnitTests/ObservedBugsTester.as | 33 ++
.../main/flex/flexUnitTests/ReflectionTester.as | 38 ++
.../flexUnitTests/core/BinaryDataTesterTest.as | 567 +++++++++++++++++++
.../flex/flexUnitTests/core/StrandTesterTest.as | 55 ++
.../flex/flexUnitTests/jira/JiraTesterTest.as | 73 +++
.../observedbugs/ObservedBugTests.as | 91 +++
.../reflection/ReflectionTesterTest.as | 373 ++++++++++++
.../reflection/ReflectionTesterTestAlias.as | 90 +++
.../reflection/ReflectionTesterTestUseCache.as | 93 +++
.../reflection/support/ITestInterface.as | 27 +
.../reflection/support/ITestInterface2.as | 29 +
.../reflection/support/ITestInterface3.as | 27 +
.../reflection/support/ITestInterface4.as | 29 +
.../reflection/support/TestClass1.as | 91 +++
.../reflection/support/TestClass2.as | 103 ++++
.../reflection/support/TestClass3.as | 39 ++
.../reflection/support/TestClass4.as | 95 ++++
.../reflection/support/TestClass5.as | 82 +++
.../src/main/flex/flexunit/framework/Assert.as | 305 ++++++++++
.../flexunit/framework/AssertionFailedError.as | 39 ++
.../main/flex/testshim/FlexJSUnitTestRunner.as | 186 ++++++
.../src/main/flex/testshim/TestResult.as | 56 ++
manualtests/UnitTests/testsview/image/Flex.png | Bin 0 -> 3526 bytes
manualtests/UnitTests/testsview/index.html | 129 +++++
manualtests/XMLTest/build.xml | 40 +-
manualtests/XMLTest/src/MyInitialView.mxml | 5 +
manualtests/build.xml | 18 +-
manualtests/build_example.xml | 540 ++++++++++++------
manualtests/pom.xml | 170 ++++++
134 files changed, 5048 insertions(+), 4350 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1b1697a0/frameworks/projects/Basic/src/main/flex/BasicClasses.as
----------------------------------------------------------------------
[22/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Switch MDLDynamicTabsExample to JSFlex only build in Maven
Posted by pe...@apache.org.
Switch MDLDynamicTabsExample to JSFlex only build in Maven
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/29bef6b1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/29bef6b1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/29bef6b1
Branch: refs/heads/feature/dragAndDrop
Commit: 29bef6b10fbb5d48ecc2c9cb27d35ecc72e1a464
Parents: 3bb0e7b
Author: piotrz <pi...@apache.org>
Authored: Wed Aug 23 23:09:38 2017 +0200
Committer: piotrz <pi...@apache.org>
Committed: Wed Aug 23 23:09:38 2017 +0200
----------------------------------------------------------------------
examples/flexjs/MDLDynamicTabsExample/pom.xml | 18 +-----------------
1 file changed, 1 insertion(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/29bef6b1/examples/flexjs/MDLDynamicTabsExample/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTabsExample/pom.xml b/examples/flexjs/MDLDynamicTabsExample/pom.xml
index db429a1..f21bcf0 100644
--- a/examples/flexjs/MDLDynamicTabsExample/pom.xml
+++ b/examples/flexjs/MDLDynamicTabsExample/pom.xml
@@ -47,6 +47,7 @@
<extensions>true</extensions>
<configuration>
<mainClass>TabsExample.mxml</mainClass>
+ <targets>JSFlex</targets>
<removeCirculars>true</removeCirculars>
<htmlTemplate>${basedir}/target/javascript/bin/js-debug/mdl-js-index-template.html</htmlTemplate>
<additionalCompilerOptions>-compiler.exclude-defaults-css-files=Basic-0.9.0-SNAPSHOT-js.swc:defaults.css</additionalCompilerOptions>
@@ -56,22 +57,6 @@
</build>
<dependencies>
- <!-- Needed for Flash compilation -->
- <dependency>
- <groupId>com.adobe.flash.framework</groupId>
- <artifactId>playerglobal</artifactId>
- <version>20.0</version>
- <type>swc</type>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.apache.flex.flexjs.framework</groupId>
- <artifactId>MaterialDesignLite</artifactId>
- <version>0.9.0-SNAPSHOT</version>
- <type>swc</type>
- <classifier>swf</classifier>
- </dependency>
<dependency>
<groupId>org.apache.flex.flexjs.framework</groupId>
<artifactId>MaterialDesignLite</artifactId>
@@ -79,7 +64,6 @@
<type>swc</type>
<classifier>js</classifier>
</dependency>
-
</dependencies>
</project>
[03/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Fixed FlexJSStore
Posted by pe...@apache.org.
Fixed FlexJSStore
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/2ce4db35
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/2ce4db35
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/2ce4db35
Branch: refs/heads/feature/dragAndDrop
Commit: 2ce4db356053482fb618256ae50b3d6fd300571c
Parents: d104a2e
Author: Harbs <ha...@in-tools.com>
Authored: Mon Aug 21 14:02:38 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Mon Aug 21 14:02:38 2017 +0300
----------------------------------------------------------------------
.../html/beads/layouts/VerticalFlexLayout.as | 1 +
.../html/supportClasses/PanelLayoutProxy.as | 27 ++++++++++++++++++++
2 files changed, 28 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/2ce4db35/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
index d0b1c23..436423d 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/layouts/VerticalFlexLayout.as
@@ -246,6 +246,7 @@ package org.apache.flex.html.beads.layouts
/**
*
* @flexjsignorecoercion org.apache.flex.core.ILayoutHost
+ * @flexjsignorecoercion org.apache.flex.core.UIBase
*
* @langversion 3.0
* @playerversion Flash 10.2
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/2ce4db35/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/PanelLayoutProxy.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/PanelLayoutProxy.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/PanelLayoutProxy.as
index 4ebc174..8189029 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/PanelLayoutProxy.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/supportClasses/PanelLayoutProxy.as
@@ -66,6 +66,7 @@ package org.apache.flex.html.supportClasses
}
/**
+ * @flexjsignorecoercion org.apache.flex.html.Panel
* The width of the bounding box.
*
* @langversion 3.0
@@ -78,6 +79,7 @@ package org.apache.flex.html.supportClasses
}
/**
+ * @flexjsignorecoercion org.apache.flex.html.Panel
* The height of the bounding box.
*
* @langversion 3.0
@@ -90,6 +92,7 @@ package org.apache.flex.html.supportClasses
}
/**
+ * @flexjsignorecoercion org.apache.flex.html.Panel
* The number of elements in the parent.
*
* @langversion 3.0
@@ -103,6 +106,7 @@ package org.apache.flex.html.supportClasses
}
/**
+ * @flexjsignorecoercion org.apache.flex.html.Panel
* Get a component from the parent.
*
* @param c The index of the subcomponent.
@@ -117,16 +121,39 @@ package org.apache.flex.html.supportClasses
return (host as Panel).$getElementAt(index);
}
+ /**
+ * @flexjsignorecoercion org.apache.flex.html.Panel
+ */
COMPILE::JS
public function get somethingelse():WrappedHTMLElement
{
return (host as Panel).element;
}
+ /**
+ * @flexjsignorecoercion org.apache.flex.html.Panel
+ */
COMPILE::JS
public function get element():WrappedHTMLElement
{
return (host as Panel).element;
}
+
+ /**
+ * @flexjsignorecoercion org.apache.flex.html.Panel
+ * The display style is used for both visible
+ * and layout so is managed as a special case.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ COMPILE::JS
+ public function setDisplayStyleForLayout(value:String):void
+ {
+ (host as Panel).setDisplayStyleForLayout(value);
+ }
+
}
}
[04/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs
into develop
Posted by pe...@apache.org.
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs into develop
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/629949ec
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/629949ec
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/629949ec
Branch: refs/heads/feature/dragAndDrop
Commit: 629949ec033368ed535cbf7d6a31898623ec71b0
Parents: 7cd3093 2ce4db3
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 07:30:30 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 07:30:30 2017 +1200
----------------------------------------------------------------------
.../flexjs/MDLExample/src/main/flex/Badges.mxml | 53 +++---
.../MDLExample/src/main/flex/Buttons.mxml | 176 ++++++++++---------
.../flexjs/MDLExample/src/main/flex/Chips.mxml | 19 +-
.../MDLExample/src/main/flex/Dialogs.mxml | 14 +-
.../MDLExample/src/main/flex/DropDownList.mxml | 5 +-
.../MDLExample/src/main/flex/Footers.mxml | 10 +-
.../flexjs/MDLExample/src/main/flex/Grids.mxml | 5 -
.../flexjs/MDLExample/src/main/flex/Icons.mxml | 58 +++---
.../flexjs/MDLExample/src/main/flex/Lists.mxml | 171 +++++++-----------
.../flexjs/MDLExample/src/main/flex/Menus.mxml | 37 ++--
.../MDLExample/src/main/flex/Sliders.mxml | 11 +-
.../MDLExample/src/main/flex/Snackbar.mxml | 13 +-
.../flexjs/MDLExample/src/main/flex/Tables.mxml | 123 ++++++-------
.../flexjs/MDLExample/src/main/flex/Tabs.mxml | 4 +-
.../MDLExample/src/main/flex/TextFields.mxml | 116 ++++++------
.../MDLExample/src/main/flex/Toggles.mxml | 90 +++++-----
.../org/apache/flex/html/ToggleTextButton.as | 25 +--
.../html/beads/layouts/VerticalFlexLayout.as | 1 +
.../html/supportClasses/PanelLayoutProxy.as | 27 +++
19 files changed, 475 insertions(+), 483 deletions(-)
----------------------------------------------------------------------
[15/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
-refactored ant builds of manual tests to be closer to examples,
and support for 'maven_compat' from test level ant scripts. -renamed
GenericTests to UnitTests and fixed some display issu
Posted by pe...@apache.org.
-refactored ant builds of manual tests to be closer to examples, and support for 'maven_compat' from test level ant scripts.
-renamed GenericTests to UnitTests and fixed some display issues due to layout changes etc
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/523eac21
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/523eac21
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/523eac21
Branch: refs/heads/feature/dragAndDrop
Commit: 523eac21fa4dff0ac0199cf0a8b0e11506e5859f
Parents: af7f5cd
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 11:33:40 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 11:33:40 2017 +1200
----------------------------------------------------------------------
manualtests/BubbleTest/build.xml | 44 +-
manualtests/ContainerTest/build.xml | 40 +-
manualtests/CursorTest/build.xml | 44 +-
manualtests/DataBindingTestbed/build.xml | 41 +-
manualtests/DataGridXcompile/build.xml | 39 +-
manualtests/DateChooserExample/build.xml | 38 +-
manualtests/EffectsExample/build.xml | 43 +-
manualtests/FlexJSTest_HTML5/build.xml | 36 +-
manualtests/FlexJSTest_Panel/build.xml | 35 +-
manualtests/FlexJSTest_SVG/build.xml | 37 +-
manualtests/FlexJSTest_basic/build.xml | 36 +-
manualtests/FlexJSTest_createjs/build.xml | 41 +-
manualtests/FlexJSTest_jquery/build.xml | 38 +-
manualtests/FormExample/build.xml | 45 +-
manualtests/FormatExample/build.xml | 43 +-
manualtests/GenericTests/build.xml | 76 ---
manualtests/GenericTests/src/GenericTests.mxml | 39 --
manualtests/GenericTests/src/MyInitialView.mxml | 193 -------
manualtests/GenericTests/src/README.txt | 61 --
manualtests/GenericTests/src/TestClasses.as | 37 --
.../src/flexUnitTests/CoreTester.as | 43 --
.../src/flexUnitTests/JiraIssuesTester.as | 29 -
.../src/flexUnitTests/ObservedBugsTester.as | 33 --
.../src/flexUnitTests/ReflectionTester.as | 38 --
.../flexUnitTests/core/BinaryDataTesterTest.as | 567 -------------------
.../src/flexUnitTests/core/StrandTesterTest.as | 55 --
.../src/flexUnitTests/jira/JiraTesterTest.as | 73 ---
.../observedbugs/ObservedBugTests.as | 101 ----
.../reflection/ReflectionTesterTest.as | 373 ------------
.../reflection/ReflectionTesterTestAlias.as | 90 ---
.../reflection/ReflectionTesterTestUseCache.as | 93 ---
.../reflection/support/ITestInterface.as | 27 -
.../reflection/support/ITestInterface2.as | 29 -
.../reflection/support/ITestInterface3.as | 27 -
.../reflection/support/ITestInterface4.as | 29 -
.../reflection/support/TestClass1.as | 91 ---
.../reflection/support/TestClass2.as | 103 ----
.../reflection/support/TestClass3.as | 39 --
.../reflection/support/TestClass4.as | 95 ----
.../src/flexunit/framework/Assert.as | 305 ----------
.../flexunit/framework/AssertionFailedError.as | 39 --
.../src/testshim/FlexJSUnitTestRunner.as | 186 ------
.../GenericTests/src/testshim/TestResult.as | 56 --
.../GenericTests/testsview/image/Flex.png | Bin 3526 -> 0 bytes
manualtests/GenericTests/testsview/index.html | 128 -----
manualtests/ImageTest/build.xml | 37 +-
manualtests/LanguageTests/build.xml | 37 +-
manualtests/ListsTest/build.xml | 35 +-
manualtests/ProxyTest/build.xml | 38 +-
manualtests/ReflectionTest/build.xml | 38 +-
manualtests/RollEventsTest/build.xml | 37 +-
manualtests/TLFEditTestFlexJS/build.xml | 36 +-
manualtests/UnitTests/README.txt | 61 ++
manualtests/UnitTests/build.xml | 58 ++
manualtests/UnitTests/src/README.txt | 61 ++
.../src/main/config/compile-app-config.xml | 25 +
.../UnitTests/src/main/flex/MyInitialView.mxml | 190 +++++++
manualtests/UnitTests/src/main/flex/README.txt | 61 ++
.../UnitTests/src/main/flex/TestClasses.as | 37 ++
.../UnitTests/src/main/flex/UnitTests.mxml | 39 ++
.../src/main/flex/flexUnitTests/CoreTester.as | 43 ++
.../main/flex/flexUnitTests/JiraIssuesTester.as | 29 +
.../flex/flexUnitTests/ObservedBugsTester.as | 33 ++
.../main/flex/flexUnitTests/ReflectionTester.as | 38 ++
.../flexUnitTests/core/BinaryDataTesterTest.as | 567 +++++++++++++++++++
.../flex/flexUnitTests/core/StrandTesterTest.as | 55 ++
.../flex/flexUnitTests/jira/JiraTesterTest.as | 73 +++
.../observedbugs/ObservedBugTests.as | 91 +++
.../reflection/ReflectionTesterTest.as | 373 ++++++++++++
.../reflection/ReflectionTesterTestAlias.as | 90 +++
.../reflection/ReflectionTesterTestUseCache.as | 93 +++
.../reflection/support/ITestInterface.as | 27 +
.../reflection/support/ITestInterface2.as | 29 +
.../reflection/support/ITestInterface3.as | 27 +
.../reflection/support/ITestInterface4.as | 29 +
.../reflection/support/TestClass1.as | 91 +++
.../reflection/support/TestClass2.as | 103 ++++
.../reflection/support/TestClass3.as | 39 ++
.../reflection/support/TestClass4.as | 95 ++++
.../reflection/support/TestClass5.as | 82 +++
.../src/main/flex/flexunit/framework/Assert.as | 305 ++++++++++
.../flexunit/framework/AssertionFailedError.as | 39 ++
.../main/flex/testshim/FlexJSUnitTestRunner.as | 186 ++++++
.../src/main/flex/testshim/TestResult.as | 56 ++
manualtests/UnitTests/testsview/image/Flex.png | Bin 0 -> 3526 bytes
manualtests/UnitTests/testsview/index.html | 129 +++++
manualtests/XMLTest/build.xml | 40 +-
manualtests/build.xml | 18 +-
manualtests/build_example.xml | 540 ++++++++++++------
89 files changed, 3753 insertions(+), 4012 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/BubbleTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/BubbleTest/build.xml b/manualtests/BubbleTest/build.xml
index 6cea9d2..8b013cf 100644
--- a/manualtests/BubbleTest/build.xml
+++ b/manualtests/BubbleTest/build.xml
@@ -22,52 +22,26 @@
<project name="bubbletest" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="BubbleTest" />
- <property name="swf.version" value="11" />
-
- <property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
- <property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
+
<!-- use this to add keep metadata option -->
<property name="theme_arg" value="-keep-as3-metadata+=Event" />
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
+ <property file="${FLEXJS_HOME}/env.properties"/>
+ <property environment="env"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
+ <property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/ContainerTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/ContainerTest/build.xml b/manualtests/ContainerTest/build.xml
index c39c049..6ab2b67 100644
--- a/manualtests/ContainerTest/build.xml
+++ b/manualtests/ContainerTest/build.xml
@@ -22,52 +22,24 @@
<project name="containertest" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="ContainerTest" />
- <property name="swf.version" value="11" />
+
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
<property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
-
+
+
<include file="${basedir}/../build_example.xml" />
-
-<!-- temp remove build_example.compilejs -->
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/CursorTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/CursorTest/build.xml b/manualtests/CursorTest/build.xml
index c0f971f..3c61362 100644
--- a/manualtests/CursorTest/build.xml
+++ b/manualtests/CursorTest/build.xml
@@ -22,52 +22,26 @@
<project name="cursortest" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="CursorTest" />
- <property name="swf.version" value="11" />
-
+
+ <!-- use this to add keep metadata option -->
+ <property name="theme_arg" value="-keep-as3-metadata+=Event" />
+
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <!-- use this to add keep metadata option -->
- <property name="theme_arg" value="-keep-as3-metadata+=Event" />
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/DataBindingTestbed/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/DataBindingTestbed/build.xml b/manualtests/DataBindingTestbed/build.xml
index 9c4ed2d..5fc23e6 100644
--- a/manualtests/DataBindingTestbed/build.xml
+++ b/manualtests/DataBindingTestbed/build.xml
@@ -22,53 +22,24 @@
<project name="databindingexample" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="DataBindingTestbed" />
- <property name="swf.version" value="11" />
-
+
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
- </target>
-
+ <delete dir="${basedir}/target" failonerror="false" />
+ </target>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/DataGridXcompile/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/DataGridXcompile/build.xml b/manualtests/DataGridXcompile/build.xml
index ccc86f8..a8c716c 100644
--- a/manualtests/DataGridXcompile/build.xml
+++ b/manualtests/DataGridXcompile/build.xml
@@ -23,49 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="DataGridXcompile" />
- <property file="${FLEXJS_HOME}/env.properties"/>
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
- </target>
+ <delete dir="${basedir}/target" failonerror="false" />
+ </target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/DateChooserExample/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/DateChooserExample/build.xml b/manualtests/DateChooserExample/build.xml
index c4e09af..84ab9b3 100644
--- a/manualtests/DateChooserExample/build.xml
+++ b/manualtests/DateChooserExample/build.xml
@@ -25,49 +25,21 @@
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
-
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
-
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/EffectsExample/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/EffectsExample/build.xml b/manualtests/EffectsExample/build.xml
index de6a574..b16f1ac 100644
--- a/manualtests/EffectsExample/build.xml
+++ b/manualtests/EffectsExample/build.xml
@@ -25,53 +25,20 @@
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
-
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
- </target>
- <!-- Uncomment to reproduce cross-compilation error in compilejs step
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
- -->
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
-
-
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FlexJSTest_HTML5/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FlexJSTest_HTML5/build.xml b/manualtests/FlexJSTest_HTML5/build.xml
index 4faedac..0253696 100644
--- a/manualtests/FlexJSTest_HTML5/build.xml
+++ b/manualtests/FlexJSTest_HTML5/build.xml
@@ -23,48 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="FlexJSTest_HTML5" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FlexJSTest_Panel/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FlexJSTest_Panel/build.xml b/manualtests/FlexJSTest_Panel/build.xml
index 267a21d..23e3886 100644
--- a/manualtests/FlexJSTest_Panel/build.xml
+++ b/manualtests/FlexJSTest_Panel/build.xml
@@ -25,47 +25,20 @@
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FlexJSTest_SVG/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FlexJSTest_SVG/build.xml b/manualtests/FlexJSTest_SVG/build.xml
index b273902..b714ff5 100644
--- a/manualtests/FlexJSTest_SVG/build.xml
+++ b/manualtests/FlexJSTest_SVG/build.xml
@@ -23,49 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="FlexJSTest_SVG" />
- <property file="${FLEXJS_HOME}/env.properties"/>
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FlexJSTest_basic/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FlexJSTest_basic/build.xml b/manualtests/FlexJSTest_basic/build.xml
index 313fe90..d39eeb0 100644
--- a/manualtests/FlexJSTest_basic/build.xml
+++ b/manualtests/FlexJSTest_basic/build.xml
@@ -23,48 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="FlexJSTest_basic" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FlexJSTest_createjs/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FlexJSTest_createjs/build.xml b/manualtests/FlexJSTest_createjs/build.xml
index b8cda4e..2a3018e 100644
--- a/manualtests/FlexJSTest_createjs/build.xml
+++ b/manualtests/FlexJSTest_createjs/build.xml
@@ -22,51 +22,24 @@
<project name="flexjstest_createjs" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="CreateJSExample" />
+
+ <property name="extlib_arg" value="-js-external-library-path+=../../js/libs/createjs.swc"/>
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
-
- <property name="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../externs/createjs/target/createjs.swc"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
-
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FlexJSTest_jquery/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FlexJSTest_jquery/build.xml b/manualtests/FlexJSTest_jquery/build.xml
index d408541..ca1f272 100644
--- a/manualtests/FlexJSTest_jquery/build.xml
+++ b/manualtests/FlexJSTest_jquery/build.xml
@@ -23,48 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="jQuerySample" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
-
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FormExample/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FormExample/build.xml b/manualtests/FormExample/build.xml
index 9e18f17..d482901 100644
--- a/manualtests/FormExample/build.xml
+++ b/manualtests/FormExample/build.xml
@@ -23,55 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="FormExample" />
- <property file="${FLEXJS_HOME}/env.properties"/>
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
-
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
- </target>
- <!-- Uncomment to reproduce cross-compilation error in compilejs step
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
- -->
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
-
-
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/FormatExample/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/FormatExample/build.xml b/manualtests/FormatExample/build.xml
index 00c6a9e..c3c7b08 100644
--- a/manualtests/FormatExample/build.xml
+++ b/manualtests/FormatExample/build.xml
@@ -23,55 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="FormatExample" />
- <property file="${FLEXJS_HOME}/env.properties"/>
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
-
+
<target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
- <!-- Uncomment to reproduce cross-compilation error in compilejs step
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
- </target>
- -->
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
-
-
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/build.xml b/manualtests/GenericTests/build.xml
deleted file mode 100644
index 7213c68..0000000
--- a/manualtests/GenericTests/build.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
-
-
-<project name="GenericTests" default="main" basedir=".">
- <property name="FLEXJS_HOME" location="../.."/>
- <property name="example" value="GenericTests" />
- <property name="swf.version" value="11" />
-
- <!-- adding flexuint style meta collection, and additional testing meta tags (Event,Bindable,TestMeta)-->
- <property name="theme_arg" value="-keep-as3-metadata+=Test,BeforeClass,AfterClass,Before,After,TestVariance,Event,Bindable,TestMeta" />
- <!-- adding flexuint style meta collection, and additional testing meta tags (Event,Bindable,TestMeta)-->
- <property name="extlib_arg" value="-keep-code-with-metadata=Test,BeforeClass,AfterClass,Before,After,TestVariance,TestMeta" />
- <property file="${FLEXJS_HOME}/env.properties"/>
- <property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
- <property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
-
- <include file="${basedir}/../build_example.xml" />
-
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of GenericTests">
- </target>
-
- <target name="clean">
- <delete dir="${basedir}/bin" failonerror="false" />
- <delete dir="${basedir}/bin-debug" failonerror="false" />
- <delete dir="${basedir}/bin-release" failonerror="false" />
- </target>
-
-</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/GenericTests.mxml
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/GenericTests.mxml b/manualtests/GenericTests/src/GenericTests.mxml
deleted file mode 100644
index 0db0af9..0000000
--- a/manualtests/GenericTests/src/GenericTests.mxml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
- xmlns:local="*"
- xmlns:models="models.*"
- xmlns:controllers="controllers.*"
- xmlns:js="library://ns.apache.org/flexjs/basic"
- >
- <fx:Style>
- @namespace js "library://ns.apache.org/flexjs/basic";
- js|Application {
- background-color:#ffffff ;
- }
- </fx:Style>
- <js:valuesImpl>
- <js:SimpleCSSValuesImpl />
- </js:valuesImpl>
- <js:initialView>
- <local:MyInitialView />
- </js:initialView>
-</js:Application>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/MyInitialView.mxml b/manualtests/GenericTests/src/MyInitialView.mxml
deleted file mode 100644
index af4aea7..0000000
--- a/manualtests/GenericTests/src/MyInitialView.mxml
+++ /dev/null
@@ -1,193 +0,0 @@
-<?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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
- xmlns:js="library://ns.apache.org/flexjs/basic"
- xmlns:local="*"
- xmlns:acc="org.apache.flex.html.accessories.*"
- initComplete="runTests()"
->
-
- <fx:Style>
- .title {
- font-size: 14pt;
- font-weight: bold;
- }
- .body {
- left:10px;
- right:10px;
- }
- </fx:Style>
-
- <fx:Script>
- <![CDATA[
- import org.apache.flex.html.Label;
- import org.apache.flex.reflection.VariableDefinition;
- import org.apache.flex.reflection.getDefinitionByName;
- import org.apache.flex.reflection.describeType;
- import org.apache.flex.reflection.TypeDefinition;
-
- import testshim.FlexJSUnitTestRunner;
- import testshim.TestResult;
-
-
-
- private var _tests:Array;
-
- public function runTests():void {
- var label:Label;
- var groups:Array = TestClasses.testClasses;
- var spaces:String = PLATFORM == "JS" ? " " : " ";
- while (groups.length) {
- var testGroupClass:Class = groups.shift() as Class;
- var td:TypeDefinition = describeType(testGroupClass);
- label = new Label();
- label.text = "Running " + td.name + " Tests";
- output.addElement(label);
- var testClasses:Array = td.variables;
- testClasses.sortOn("name");
- var i:uint = 0, l:uint = testClasses.length;
- if (l == 0) {
- label = new Label();
- label.text = spaces+ "[Zero tests detected]";
- output.addElement(label);
- continue;
- }
- for (; i < l; i++) {
- var varDef:VariableDefinition = testClasses[i];
-
- var testClass:Class = getDefinitionByName(varDef.type.qualifiedName) as Class;
- fails = [];
- passes = [];
- variances = [];
- warnings = [];
- var runner:FlexJSUnitTestRunner = new FlexJSUnitTestRunner(testClass, onTestResult);
- runner.runTests();
- label = new Label();
-
- label.text = "TEST: " + runner.testingName + spaces + "Passed:" + runner.successCount + ", Failed:" + runner.failCount + ", assertions made:" + runner.successfulAssertions;
- label.style = {color: runner.failCount == 0 ? "green" : "red"};
- output.addElement(label);
- if (runner.failCount > 0 || fails.length) {
- //show any failing test details
- appendTestResults(fails);
- }
- if (variances.length) {
- appendTestResults(variances);
- }
- if (warnings.length) {
- appendTestResults(warnings);
- }
- }
- }
-
- }
-
-
- private var fails:Array;
- private var passes:Array;
- private var variances:Array;
- private var warnings:Array;
- public function onTestResult(result:TestResult):void {
- if (result.pass) passes.push(result);
- else fails.push(result);
-
- if (result.hasVariance && result.pass) {
- if (result.varianceTarget.indexOf(PLATFORM) != -1) {
- //variance applies to this target
- variances.push(result);
- }
- }
-
- if (result.warning!=null && result.pass && !result.hasVariance) {
- // a test result that would otherwise indicate a pass, but has a warning
- warnings.push(result);
- }
- }
-
- public function appendTestResults(array:Array):void {
- array = array.slice();
- var spaces:String = " ";
- var newline:String = "\n" ;
- while (array.length) {
- var result:TestResult = array.shift();
- var label:Label = new Label();
- //label.x=10; <- fails in js, using 'spaces' below instead
- var message:String = spaces + result.toString(newline +spaces);
-
- if (result.hasVariance)
- message = spaces + "VARIANCE:" + result.varianceDescription + newline + message ;
- if (result.warning != null) {
- message = spaces + result.warning +newline +message;
- }
- if (PLATFORM == "JS") {
- message = escapeForHtml(message);
- var jsSpaces:String = spaces.split(" ").join(" ");
- message = message.split(spaces).join(jsSpaces);
- }
-
- label.text = message;
-
- if (result.pass) {
- var showOrange:Boolean = false;
- if (result.hasVariance || result.warning!=null) showOrange = true;
- label.style = {color: showOrange ? 0xFFA500 : "green"};
- } else label.style = {color: "red"};
- output.addElement(label);
- }
- }
-
- private static function escapeForHtml( string : String ) : String {
- return string.split("<").join("<").split(">").join(">").split("\n").join("<br/>");
- }
-
-
- private static function getPlatform():String {
- try {
- var check:* = getDefinitionByName("flash.system.Capabilities");
- } catch (e:Error) {
- return "JS";
- }
- //if this next reference to 'check' is not included, then the above try/catch code
- // appears to be optimized away in js-release mode
- //[this issue was added to ObservedBugs Tests]
- if (check == null) {
- return "JS";
- }
- return "SWF";
- }
-
- public static const PLATFORM:String = getPlatform();
- ]]>
- </fx:Script>
- <js:beads>
- <js:ViewDataBinding/>
- </js:beads>
- <js:Group id="cont" height="50" className="body">
- <js:beads>
- <js:VerticalFlexLayout />
- </js:beads>
- <js:Label text="{PLATFORM} Cross-compiled Unit Tests" className="title" />
- </js:Group>
- <js:Group id="output" height="700" y="50" className="body">
- <js:beads>
- <js:VerticalFlexLayout />
- </js:beads>
- </js:Group>
-</js:View>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/README.txt
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/README.txt b/manualtests/GenericTests/src/README.txt
deleted file mode 100644
index 4ef6e3f..0000000
--- a/manualtests/GenericTests/src/README.txt
+++ /dev/null
@@ -1,61 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-
-DESCRIPTION
-
-The GenericTests application is a very basic form of unit testing primarily
-intended for FlexJS framework developers. It is a 'lite' version of a small portion of
-Flexunit code to support basic assertion tests.
-
-This Flex application may be run as a Flash SWF or cross-compiled (using Falcon JX)
-into JavaScript and HTML and run without Flash.
-
-There is a convenience html page for hosting the tests side-by-side that permits developers
-to refresh the test builds simultaneously and compare results in the browser, including the
-ability to toggle between JS-Debug and JS-Release builds.
-While this is primarily intended for framework developers, it may be useful as a starting point
-for cross-compiled unit testing (during development only) in regular FlexJS projects.
-
-FRAMEWORK DEVELOPER NOTES
-To add new tests, follow the examples inside the flexUnitTests package, and add any new Test
-group or category level class (the classes directly inside flexUnitTests package) into the top
-level TestClasses.as file. This should be all that is necessary to add new tests.
-
-MetaData
-[BeforeClass] -same as flexunit (typical: 'setupBeforClass')- runs a static method before the test class is instantiated
-[AfterClass] -same as flexunit (typical: 'tearDownAfterClass')- runs a static method after the test class has been processed
-[Before] -same as flexunit (typical: 'setup') - runs an instance method before the test class' test methods are processed
-[After] -same as flexunit (typical: 'tearDown') - runs an instance method after the test class' test methods are processed
-[Test] -same as flexunit (typical: 'testXXXX') - denotes a test method. No assumption about order of test methods being called should be made
-
-[TestVariance(variance="JS",description="Reason for variation in JS expected results")]
-The above is specific to this test app, and permits annotation of test methods where the expected results are different between compiler targets.
-The variance key in the meta data should be either "SWF" or "JS". This is the compiler target with the result that is considered to be different
-to what it ideally 'should be', but correct as per the current implementation of the framework. Usually this will be "JS". It indicates a known
-but currently acceptable difference between compiler targets.
-
-
-GENERAL NOTES
-
-In its first working version this app only supports synchronous simple assertions and
-is intended to use test classes that are compatible with the flexunit tests that are
-used in the full framework build. Future versions may include more advanced features.
-
-The cross-compilation to JavaScript often results in non-fatal warnings. Some of these warnings
-should be addressed in future releases of the Falcon JX compiler.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/TestClasses.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/TestClasses.as b/manualtests/GenericTests/src/TestClasses.as
deleted file mode 100644
index f7273c0..0000000
--- a/manualtests/GenericTests/src/TestClasses.as
+++ /dev/null
@@ -1,37 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
- //test groups
- import flexUnitTests.*;
-
-
- public class TestClasses
- {
-
- public static function get testClasses():Array {
- return [
- CoreTester,
- ReflectionTester,
- ObservedBugsTester,
- JiraIssuesTester
- ];
- }
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/CoreTester.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/CoreTester.as b/manualtests/GenericTests/src/flexUnitTests/CoreTester.as
deleted file mode 100644
index 9af36e3..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/CoreTester.as
+++ /dev/null
@@ -1,43 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests
-{
- import flexUnitTests.core.*
-
- [Suite]
- [RunWith("org.flexunit.runners.Suite")]
- public class CoreTester
- {
- public function CoreTester()
- {
- // for JS, force-link these classes in the output
- var arr:Array = [StrandTesterTest, BinaryDataTesterTest];
- }
-
- // in JS, using a class as a type won't include the class in
- // the output since types are not chcked in JS. It is when
- // the actual class is referenced that it will be included
- // in the output.
- // Is there a reason to use reflection to gather the set
- // of tests? I would think an array of tests would wokr
- // better and allow you to define order.
- public var strandTesterTest:StrandTesterTest;
- public var binaryDataTesterTest:BinaryDataTesterTest;
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/JiraIssuesTester.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/JiraIssuesTester.as b/manualtests/GenericTests/src/flexUnitTests/JiraIssuesTester.as
deleted file mode 100644
index fc37533..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/JiraIssuesTester.as
+++ /dev/null
@@ -1,29 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests
-{
- import flexUnitTests.jira.*
-
- [Suite]
- [RunWith("org.flexunit.runners.Suite")]
- public class JiraIssuesTester
- {
-
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/ObservedBugsTester.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/ObservedBugsTester.as b/manualtests/GenericTests/src/flexUnitTests/ObservedBugsTester.as
deleted file mode 100644
index 11f62e3..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/ObservedBugsTester.as
+++ /dev/null
@@ -1,33 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests
-{
- import flexUnitTests.observedbugs.*
-
- [Suite]
- [RunWith("org.flexunit.runners.Suite")]
- public class ObservedBugsTester
- {
- public function ObservedBugsTester()
- {
- var arr:Array = [ObservedBugTests];
- }
- public var observedBugsTest1:ObservedBugTests;
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/ReflectionTester.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/ReflectionTester.as b/manualtests/GenericTests/src/flexUnitTests/ReflectionTester.as
deleted file mode 100644
index 74c5b4d..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/ReflectionTester.as
+++ /dev/null
@@ -1,38 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests
-{
- import flexUnitTests.reflection.*;
-
- [Suite]
- [RunWith("org.flexunit.runners.Suite")]
- public class ReflectionTester
- {
- public function ReflectionTester()
- {
- // see notes in CoreTester
- var arr:Array = [ReflectionTesterTest, ReflectionTesterTestUseCache, ReflectionTesterTestAlias];
- }
-
- public var reflectionTesterCacheTest:ReflectionTesterTestUseCache;
- public var reflectionTesterTest:ReflectionTesterTest;
-
- public var reflectionTesterAliasTest:ReflectionTesterTestAlias;
- }
-}
[08/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Quick fix for ImageTest
Posted by pe...@apache.org.
Quick fix for ImageTest
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a5f14d73
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a5f14d73
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a5f14d73
Branch: refs/heads/feature/dragAndDrop
Commit: a5f14d73961a9aefbee0c16b7a0a03e5fd77b3e9
Parents: a1f60d1
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 11:28:02 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 11:28:02 2017 +1200
----------------------------------------------------------------------
manualtests/ImageTest/src/MyInitialView.mxml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a5f14d73/manualtests/ImageTest/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/ImageTest/src/MyInitialView.mxml b/manualtests/ImageTest/src/MyInitialView.mxml
index 8037448..0ed949a 100644
--- a/manualtests/ImageTest/src/MyInitialView.mxml
+++ b/manualtests/ImageTest/src/MyInitialView.mxml
@@ -35,10 +35,10 @@ limitations under the License.
<js:VerticalLayout />
</js:beads>
- <js:Image width="48" height="48" source="smallbluerect.jpg" />
- <js:Image width="183" height="178" source="largegreenrect.png" />
- <js:Image width="48" height="48" source="smallorangerect.gif" />
- <js:Image width="48" height="48" source="smallgreenrect.jpg" />
+ <js:Image width="48" height="48" src="smallbluerect.jpg" />
+ <js:Image width="183" height="178" src="largegreenrect.png" />
+ <js:Image width="48" height="48" src="smallorangerect.gif" />
+ <js:Image width="48" height="48" src="smallgreenrect.jpg" />
</js:Container>
[09/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Quick fix for ListsTest
Posted by pe...@apache.org.
Quick fix for ListsTest
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/1fe4d2c9
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/1fe4d2c9
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/1fe4d2c9
Branch: refs/heads/feature/dragAndDrop
Commit: 1fe4d2c97e41a8d2f2eb4d958f7c8e7e70dd803e
Parents: a5f14d7
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 11:29:05 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 11:29:05 2017 +1200
----------------------------------------------------------------------
manualtests/ListsTest/src/products/ProductItemRenderer.as | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1fe4d2c9/manualtests/ListsTest/src/products/ProductItemRenderer.as
----------------------------------------------------------------------
diff --git a/manualtests/ListsTest/src/products/ProductItemRenderer.as b/manualtests/ListsTest/src/products/ProductItemRenderer.as
index 2983149..6e3d74a 100644
--- a/manualtests/ListsTest/src/products/ProductItemRenderer.as
+++ b/manualtests/ListsTest/src/products/ProductItemRenderer.as
@@ -57,7 +57,7 @@ package products
{
super.data = value;
- image.url = data.image;
+ image.src = data.image;
title.text = data.title;
detail.text = data.detail;
}
[21/32] flex-asjs git commit: “Stringables” should be assignable to XML
Posted by pe...@apache.org.
“Stringables” should be assignable to XML
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/3bb0e7b1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/3bb0e7b1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/3bb0e7b1
Branch: refs/heads/feature/dragAndDrop
Commit: 3bb0e7b1205315edb379be3674e6a2be05165cee
Parents: e17b287
Author: Harbs <ha...@in-tools.com>
Authored: Wed Aug 23 23:51:24 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Wed Aug 23 23:51:24 2017 +0300
----------------------------------------------------------------------
frameworks/projects/XML/src/main/flex/XML.as | 9 +++++++++
1 file changed, 9 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3bb0e7b1/frameworks/projects/XML/src/main/flex/XML.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/XML/src/main/flex/XML.as b/frameworks/projects/XML/src/main/flex/XML.as
index 7970df1..054682e 100644
--- a/frameworks/projects/XML/src/main/flex/XML.as
+++ b/frameworks/projects/XML/src/main/flex/XML.as
@@ -1943,6 +1943,15 @@ package
var i:int;
var len:int;
var chld:XML;
+
+ // I'm not wure that this a strict interpretation of the spec but I think this does the "right thing".
+ var childType:String = typeof elements;
+ if(childType != "object")
+ {
+ var stringable:XML = xmlFromStringable(elements);
+ elements = new XML("<" + elementName + "/>");
+ elements.appendChild(stringable);
+ }
if(elements is XML)
{
[02/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Simplified ToggleTextButton
Posted by pe...@apache.org.
Simplified ToggleTextButton
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/d104a2ed
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/d104a2ed
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/d104a2ed
Branch: refs/heads/feature/dragAndDrop
Commit: d104a2edb2ef06e348ee65d9b56d44ccd071841c
Parents: 8b10930
Author: Harbs <ha...@in-tools.com>
Authored: Mon Aug 21 14:01:55 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Mon Aug 21 14:01:55 2017 +0300
----------------------------------------------------------------------
.../org/apache/flex/html/ToggleTextButton.as | 25 ++++----------------
1 file changed, 4 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/d104a2ed/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/ToggleTextButton.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/ToggleTextButton.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/ToggleTextButton.as
index 6061898..8718a6f 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/ToggleTextButton.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/ToggleTextButton.as
@@ -85,10 +85,6 @@ package org.apache.flex.html
{
addEventListener(MouseEvent.CLICK, internalMouseHandler);
}
- COMPILE::JS
- {
- this.typeNames = 'toggleTextButton';
- }
}
private var _selected:Boolean = false;
@@ -130,9 +126,7 @@ package org.apache.flex.html
if (_selected != value)
{
_selected = value;
-
internalSelected();
-
dispatchEvent(new Event("change"));
}
}
@@ -177,26 +171,15 @@ package org.apache.flex.html
COMPILE::JS
{
var isToggleTextButtonSelected:Boolean = element.classList.contains("toggleTextButton_Selected");
- if (!isToggleTextButtonSelected && _selected == true)
- {
- element.classList.add("toggleTextButton_Selected");
- }
- else if (isToggleTextButtonSelected && _selected == false)
- {
+ //sync the class with the state
+ if(isToggleTextButtonSelected != _selected)
element.classList.toggle("toggleTextButton_Selected");
- }
var isToggleTextButton:Boolean = element.classList.contains("toggleTextButton");
- if (!isToggleTextButton && _selected == false)
- {
- element.classList.add("toggleTextButton");
- }
- else if (isToggleTextButton && _selected == true)
- {
+ // Need to toggle if we have the class and it's selected or we don't and it's not selected.
+ if(isToggleTextButton == _selected)
element.classList.toggle("toggleTextButton");
- }
- typeNames = element.className;
}
}
[29/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Add MDLDynamicTableExample to ilustrate how add/remove items to MDL Table -
Currently only adding is working. The rest job will be done as part of
FLEX-35354
Posted by pe...@apache.org.
Add MDLDynamicTableExample to ilustrate how add/remove items to MDL Table - Currently only adding is working. The rest job will be done as part of FLEX-35354
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/885e3213
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/885e3213
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/885e3213
Branch: refs/heads/feature/dragAndDrop
Commit: 885e3213653ce7188d8365a1a8f2a2e2018d351d
Parents: 37dc600
Author: piotrz <pi...@apache.org>
Authored: Sun Aug 27 23:16:17 2017 +0200
Committer: piotrz <pi...@apache.org>
Committed: Sun Aug 27 23:16:17 2017 +0200
----------------------------------------------------------------------
examples/flexjs/MDLDynamicTableExample/pom.xml | 74 ++++++++++++++++++++
.../src/MDLDynamicTableExample.mxml | 36 ++++++++++
.../MDLDynamicTableExample/src/MainView.mxml | 65 +++++++++++++++++
.../CustomTableRowItemRenderer.mxml | 46 ++++++++++++
.../src/models/UserListModel.as | 37 ++++++++++
.../src/resources/mdl-js-index-template.html | 33 +++++++++
.../src/resources/mdl-styles.css | 31 ++++++++
.../MDLDynamicTableExample/src/vo/UserVO.as | 40 +++++++++++
examples/flexjs/pom.xml | 1 +
9 files changed, 363 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/pom.xml b/examples/flexjs/MDLDynamicTableExample/pom.xml
new file mode 100644
index 0000000..c1603a0
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/pom.xml
@@ -0,0 +1,74 @@
+<?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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.flex.flexjs.examples</groupId>
+ <artifactId>examples-flexjs</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>MDLDynamicTableExample</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <packaging>swf</packaging>
+
+ <name>Apache Flex - FlexJS: Examples: FlexJS: MDLDynamicTableExample</name>
+
+ <properties>
+ <!-- Customize MDL colors using this the tool at : https://getmdl.io/customize/index.html -->
+ <primary>indigo</primary>
+ <accent>pink</accent>
+ </properties>
+
+ <build>
+ <sourceDirectory>src</sourceDirectory>
+ <resources>
+ <resource>
+ <directory>src/resources</directory>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.flex.flexjs.compiler</groupId>
+ <artifactId>flexjs-maven-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <mainClass>MDLDynamicTableExample.mxml</mainClass>
+ <targets>JSFlex</targets>
+ <htmlTemplate>${basedir}/target/javascript/bin/js-debug/mdl-js-index-template.html</htmlTemplate>
+ <additionalCompilerOptions>-compiler.exclude-defaults-css-files=Basic-0.9.0-SNAPSHOT-js.swc:defaults.css</additionalCompilerOptions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.flex.flexjs.framework</groupId>
+ <artifactId>MaterialDesignLite</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+ </dependencies>
+
+</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/src/MDLDynamicTableExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/src/MDLDynamicTableExample.mxml b/examples/flexjs/MDLDynamicTableExample/src/MDLDynamicTableExample.mxml
new file mode 100644
index 0000000..4e2a329
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/src/MDLDynamicTableExample.mxml
@@ -0,0 +1,36 @@
+<?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.
+
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:js="library://ns.apache.org/flexjs/basic"
+ xmlns:local="*">
+
+ <fx:Style source="resources/mdl-styles.css"/>
+
+ <js:valuesImpl>
+ <js:SimpleCSSValuesImpl />
+ </js:valuesImpl>
+
+ <js:initialView>
+ <js:View width="100%" height="100%">
+ <local:MainView />
+ </js:View>
+ </js:initialView>
+
+ </js:Application>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/src/MainView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/src/MainView.mxml b/examples/flexjs/MDLDynamicTableExample/src/MainView.mxml
new file mode 100644
index 0000000..95691fb
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/src/MainView.mxml
@@ -0,0 +1,65 @@
+<?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.
+
+-->
+<mdl:Grid xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:js="library://ns.apache.org/flexjs/basic"
+ xmlns:mdl="library://ns.apache.org/flexjs/mdl" xmlns:models="models.*">
+
+ <fx:Script>
+ <![CDATA[
+ import vo.UserVO;
+
+ private function onAddEmployeeClick(event:MouseEvent):void
+ {
+ usersListModel.users.addItem(new UserVO("piotrz", "Piotr", "Zarzycki", "piotrz@apache.org"));
+ }
+ ]]>
+ </fx:Script>
+
+ <mdl:beads>
+ <js:ContainerDataBinding/>
+ </mdl:beads>
+
+ <mdl:model>
+ <models:UserListModel id="usersListModel"/>
+ </mdl:model>
+
+ <mdl:GridCell column="12">
+ <mdl:Table id="tblUsers" shadow="2"
+ dataProvider="{usersListModel.users}" className="customTableStyle">
+ <mdl:columns>
+ <mdl:TableColumn headerText="Username" />
+ <mdl:TableColumn headerText="First Name"/>
+ <mdl:TableColumn headerText="Last Name"/>
+ <mdl:TableColumn headerText="Email"/>
+ </mdl:columns>
+ <mdl:beads>
+ <!--Bead for listening changes of collection source-->
+ <js:DataProviderCollectionChangeNotifier sourceID="usersListModel" propertyName="users"
+ destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
+ <!--Bead for listening items events changes-->
+ <js:DataProviderItemsChangeNotifier sourceID="usersListModel" propertyName="users"
+ destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
+ </mdl:beads>
+ </mdl:Table>
+ </mdl:GridCell>
+ <mdl:GridCell>
+ <mdl:Button text="Add Employee" width="100" click="onAddEmployeeClick(event)"/>
+ </mdl:GridCell>
+</mdl:Grid>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/src/itemRenderers/CustomTableRowItemRenderer.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/src/itemRenderers/CustomTableRowItemRenderer.mxml b/examples/flexjs/MDLDynamicTableExample/src/itemRenderers/CustomTableRowItemRenderer.mxml
new file mode 100644
index 0000000..cf92588
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/src/itemRenderers/CustomTableRowItemRenderer.mxml
@@ -0,0 +1,46 @@
+<?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.
+
+-->
+<mdl:TableRowItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:js="library://ns.apache.org/flexjs/basic"
+ xmlns:mdl="library://ns.apache.org/flexjs/mdl"
+ xmlns="http://www.w3.org/1999/xhtml">
+
+ <fx:Script>
+ <![CDATA[
+ import vo.UserVO;
+
+ [Bindable("dataChange")]
+ public function get userVO():UserVO
+ {
+ return data as UserVO;
+ }
+ ]]>
+ </fx:Script>
+
+ <mdl:beads>
+ <js:ItemRendererDataBinding />
+ </mdl:beads>
+
+ <mdl:TableCell text="{userVO.username}"/>
+ <mdl:TableCell text="{userVO.firstName}"/>
+ <mdl:TableCell text="{userVO.lastName}"/>
+ <mdl:TableCell text="{userVO.email}"/>
+
+</mdl:TableRowItemRenderer>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/src/models/UserListModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/src/models/UserListModel.as b/examples/flexjs/MDLDynamicTableExample/src/models/UserListModel.as
new file mode 100644
index 0000000..3952312
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/src/models/UserListModel.as
@@ -0,0 +1,37 @@
+/*
+ *
+ * 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 models
+{
+ import org.apache.flex.collections.ArrayList;
+ import vo.UserVO;
+
+ [Bindable]
+ public class UserListModel
+ {
+ private var _users:ArrayList = new ArrayList([
+ new UserVO("lstooge","Larry", "Stooge", "larry@stooges.com" ),
+ new UserVO("cstooge","Curly", "Stooge", "curly@stooges.com" )
+ ]);
+
+ public function get users():ArrayList
+ {
+ return _users
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-js-index-template.html
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-js-index-template.html b/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-js-index-template.html
new file mode 100644
index 0000000..f21943f
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-js-index-template.html
@@ -0,0 +1,33 @@
+<!--
+ 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.
+-->
+<!DOCTYPE html>
+<html>
+<head>
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="Custom Template for injecting custom style CSS">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
+ <link rel="stylesheet" type="text/css" href="${application}.css">
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+ <link rel="stylesheet" href="https://code.getmdl.io/1.3.0/material.min.css">
+ <script src="https://code.getmdl.io/1.3.0/material.min.js"></script>
+${head}
+</head>
+<body>
+${body}
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-styles.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-styles.css b/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-styles.css
new file mode 100644
index 0000000..5e15f22
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/src/resources/mdl-styles.css
@@ -0,0 +1,31 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 "http://www.w3.org/1999/xhtml";
+@namespace js "library://ns.apache.org/flexjs/basic";
+@namespace mdl "library://ns.apache.org/flexjs/mdl";
+
+.customTableStyle
+{
+ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DynamicItemsRendererFactoryForArrayListData");
+ IItemRenderer: ClassReference("itemRenderers.CustomTableRowItemRenderer");
+}
+
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/MDLDynamicTableExample/src/vo/UserVO.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTableExample/src/vo/UserVO.as b/examples/flexjs/MDLDynamicTableExample/src/vo/UserVO.as
new file mode 100644
index 0000000..6181ab8
--- /dev/null
+++ b/examples/flexjs/MDLDynamicTableExample/src/vo/UserVO.as
@@ -0,0 +1,40 @@
+/*
+ *
+ * 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 vo
+{
+ [Bindable]
+ public class UserVO
+ {
+ public var username:String;
+ public var firstName:String;
+ public var lastName:String;
+ public var email:String;
+
+ public function UserVO(username:String = null,
+ firstName:String = null,
+ lastName:String = null,
+ email:String = null)
+ {
+ this.username = username;
+ this.firstName = firstName;
+ this.lastName = lastName;
+ this.email = email;
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/885e3213/examples/flexjs/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/pom.xml b/examples/flexjs/pom.xml
index 2de6a5a..a749153 100644
--- a/examples/flexjs/pom.xml
+++ b/examples/flexjs/pom.xml
@@ -53,6 +53,7 @@
<!--module>MDLBlogExample</module>-->
<module>MDLDynamicTabsExample</module>
<module>MDLExample</module>
+ <module>MDLDynamicTableExample</module>
<module>ModuleExample</module>
<module>MobileMap</module>
<module>MobileStocks</module>
[30/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Allow chained assignment to non-existent children
Posted by pe...@apache.org.
Allow chained assignment to non-existent children
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/884826eb
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/884826eb
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/884826eb
Branch: refs/heads/feature/dragAndDrop
Commit: 884826ebfb9184574a17e6cb0a9f62331a4a31be
Parents: 37dc600
Author: Harbs <ha...@in-tools.com>
Authored: Mon Aug 28 12:54:52 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Mon Aug 28 12:54:52 2017 +0300
----------------------------------------------------------------------
frameworks/projects/XML/src/main/flex/XML.as | 10 +++++++
.../projects/XML/src/main/flex/XMLList.as | 31 ++++++++++++++++----
manualtests/XMLTest/src/MyInitialView.mxml | 5 ++++
3 files changed, 41 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/884826eb/frameworks/projects/XML/src/main/flex/XML.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/XML/src/main/flex/XML.as b/frameworks/projects/XML/src/main/flex/XML.as
index cf3d9ea..7e749fc 100644
--- a/frameworks/projects/XML/src/main/flex/XML.as
+++ b/frameworks/projects/XML/src/main/flex/XML.as
@@ -2131,6 +2131,16 @@ package
{
_value = value;
}
+
+ /**
+ * @private
+ *
+ * Allows XMLList to get the targetObject of its targetObject and not error when it gets the XML
+ */
+ public function get targetObject():*
+ {
+ return null;
+ }
/**
* Returns an XMLList object of all XML properties of the XML object that represent XML text nodes.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/884826eb/frameworks/projects/XML/src/main/flex/XMLList.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/XML/src/main/flex/XMLList.as b/frameworks/projects/XML/src/main/flex/XMLList.as
index d90ee3d..6f8dcdd 100644
--- a/frameworks/projects/XML/src/main/flex/XMLList.as
+++ b/frameworks/projects/XML/src/main/flex/XMLList.as
@@ -230,6 +230,7 @@ package
public function child(propertyName:Object):XMLList
{
var retVal:XMLList = new XMLList();
+ retVal.targetProperty = propertyName.toString();
var propNum:Number = parseInt(propertyName,10);
if(propNum.toString() == propertyName)
{
@@ -240,9 +241,12 @@ package
}
return retVal;
}
+ if(isEmpty())
+ {
+ retVal.targetObject = this;
+ }
if(isSingle())
return _xmlArray[0].child(propertyName);
-
var len:int = _xmlArray.length;
for (var i:int=0;i<len;i++)
{
@@ -783,12 +787,25 @@ package
{
return _targetProperty;
}
-
- public function setAttribute(attr:*,value:String):void
+ private function xmlFromProperty():XML
{
+ var xmlStr:String = "<";
+ if(_targetProperty.prefix)
+ xmlStr += _targetProperty.prefix + "::";
+
+ xmlStr += _targetProperty.localName + "/>";
+ return new XML(xmlStr);
+ }
+ public function setAttribute(attr:*,value:String):String
+ {
+ if(isEmpty() && targetObject)//walk up the tree and create nodes.
+ _xmlArray[0] = targetObject.setChild(_targetProperty,xmlFromProperty());
+
var len:int = _xmlArray.length;
for (var i:int=0;i<len;i++)
_xmlArray[i].setAttribute(attr,value);
+
+ return value;
}
public function hasAncestor(obj:*):Boolean
@@ -840,11 +857,15 @@ package
if(isSingle())
return _xmlArray[0].replace(propertyName,value);
}
- public function setChild(elementName:*, elements:Object):void
+ public function setChild(elementName:*, elements:Object):Object
{
+ if(isEmpty() && targetObject)//walk up the tree and create nodes.
+ _xmlArray[0] = targetObject.setChild(_targetProperty,xmlFromProperty());
+
if(isSingle())
_xmlArray[0].setChild(elementName,elements);
-
+
+ return elements;
}
public function setParent(parent:XML):void
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/884826eb/manualtests/XMLTest/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/XMLTest/src/MyInitialView.mxml b/manualtests/XMLTest/src/MyInitialView.mxml
index 6b73d7f..851aeac 100644
--- a/manualtests/XMLTest/src/MyInitialView.mxml
+++ b/manualtests/XMLTest/src/MyInitialView.mxml
@@ -103,6 +103,11 @@ limitations under the License.
trace(xml1.toXMLString() == '<foo baz="true"/>');
var baz:XMLList = xml1.@baz;
trace("baz: " + xml1.@baz.toString() + " //true");
+ var xml3:XML = <root/>;
+ xml3.bar.baz = "baz";
+ xml3.foo.@boo = "boo";
+ trace("baz? " + xml3.bar.baz);
+ trace("boo? " + xml3.foo.@boo);
var child:XML = <pop><child name="Sam"/></pop>;
xml1.appendChild(child);
child = <pop><child name="George"/></pop>;
[13/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
-refactored ant builds of manual tests to be closer to examples,
and support for 'maven_compat' from test level ant scripts. -renamed
GenericTests to UnitTests and fixed some display issu
Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/testshim/FlexJSUnitTestRunner.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/testshim/FlexJSUnitTestRunner.as b/manualtests/GenericTests/src/testshim/FlexJSUnitTestRunner.as
deleted file mode 100644
index 7494963..0000000
--- a/manualtests/GenericTests/src/testshim/FlexJSUnitTestRunner.as
+++ /dev/null
@@ -1,186 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package testshim {
-
-import org.apache.flex.reflection.MetaDataArgDefinition;
-import org.apache.flex.reflection.MetaDataDefinition;
-import org.apache.flex.reflection.MethodDefinition;
-import org.apache.flex.reflection.TypeDefinition;
-import org.apache.flex.reflection.describeType;
-
-import flexunit.framework.Assert;
-public class FlexJSUnitTestRunner {
-
-
- public function FlexJSUnitTestRunner(testerClass:Class, notificationReceiver:Function) {
- this.testerClass = testerClass;
- this.callback = notificationReceiver;
- prepare();
- }
-
- private var testerClass:Class;
- private var callback:Function;
-
- private var _testingName:String;
- public function get testingName():String{
- return _testingName;
- }
- private var _successCount:uint=0;
- public function get successCount():uint {
- return _successCount;
- }
-
- private var _failCount:uint=0;
- public function get failCount():uint {
- return _failCount;
- }
-
- private var _successfulAssertions:uint=0;
- public function get successfulAssertions():uint {
- return _successfulAssertions;
- }
-
- private var beforeClassFunc:Function;
- private var afterClassFunc:Function;
- private var setupFunc:MethodDefinition;
- private var tearDownFunc:MethodDefinition;
-
- private var testMethods:Array=[];
-
- private function prepare():void{
- var typeDef:TypeDefinition = describeType(testerClass);
- _testingName = typeDef.name;
- var staticMethods:Array = typeDef.staticMethods;
- for each (var methodDef:MethodDefinition in staticMethods) {
- var beforeClass:Array = methodDef.retrieveMetaDataByName("BeforeClass");
- var afterClass:Array = methodDef.retrieveMetaDataByName("AfterClass");
- if ( beforeClass.length ) {
- if (beforeClassFunc!=null) throw new Error("BeforeClass used more than once in "+typeDef.qualifiedName);
- beforeClassFunc = testerClass[methodDef.name];
- }
- if ( afterClass.length ) {
- if (afterClassFunc!=null) throw new Error("AfterClass used more than once in "+typeDef.qualifiedName);
- afterClassFunc = testerClass[methodDef.name];
- }
- }
- var methods:Array = typeDef.methods;
- for each (methodDef in methods) {
- var beforeTests:Array = methodDef.retrieveMetaDataByName("Before");
- var afterTests:Array = methodDef.retrieveMetaDataByName("After");
- if ( beforeTests.length ) {
- if (setupFunc!=null) throw new Error("Before used more than once in "+typeDef.qualifiedName);
- setupFunc = methodDef;
- }
- if ( afterTests.length ) {
- if (tearDownFunc!=null) throw new Error("After used more than once in "+typeDef.qualifiedName);
- tearDownFunc = methodDef;
- }
- var test:Array = methodDef.retrieveMetaDataByName("Test");
- if (test.length) {
- testMethods.push(methodDef);
- }
- testMethods.sortOn("name");
- }
-
- if (testMethods.length == 0) {
- throw new Error("Zero test methods detected in "+typeDef.qualifiedName+", check to make sure -keep-as3-metadata is configured");
- }
- }
-
- private function begin():void {
- if (beforeClassFunc!=null) beforeClassFunc();
- }
-
- public function runTests():void{
- begin();
- var testInstance:Object = new testerClass();
- if (setupFunc!=null) {
- testInstance[setupFunc.name]();
- }
- var i:uint=0, l:uint=testMethods.length;
-
- for(;i<l;i++) {
- runFlexJSTest(_testingName,testInstance,testMethods[i],callback);
- }
-
- if (tearDownFunc!=null) {
- testInstance[tearDownFunc.name]();
- }
- end();
- }
-
- private function end():void{
- if (afterClassFunc!=null) afterClassFunc();
- }
-
-
- private function runFlexJSTest(testClass:String,instance:Object,methodDef:MethodDefinition,callback:Function=null):void{
- var methodName:String = methodDef.name;
- trace('running test in '+testClass+":"+methodName);
- var varianceMetas:Array = methodDef.retrieveMetaDataByName("TestVariance");
-
- var method:Function = instance[methodName];
- var preAssertCount:uint = Assert.assertionsMade;
- var result:TestResult = new TestResult();
- result.assertions = 0;
- result.pass = true;
- result.error = null;
- result.testClass = testClass;
- result.testMethod = methodName;
-
- while (varianceMetas.length) {
- var varianceMeta:MetaDataDefinition = varianceMetas.shift();
- var varianceArgs:Array = varianceMeta.getArgsByKey("variance");
- var i:uint=0, l:uint= varianceArgs.length;
- if (l) {
- result.hasVariance=true;
- for(;i<l;i++) varianceArgs[i] = varianceArgs[i].value;
- result.varianceTarget = varianceArgs.join(",");
- }
- if (result.hasVariance) {
- var descriptionArgs:Array= varianceMeta.getArgsByKey("description");
- if (descriptionArgs.length) result.varianceDescription = "";
- while(descriptionArgs.length) {
- var description:MetaDataArgDefinition = descriptionArgs.shift();
- result.varianceDescription +=description.value;
- if (descriptionArgs.length) result.varianceDescription += ", ";
- }
- }
- }
- //run the test method
- try {
- method();
- } catch (e:Error) {
- result.pass=false;
- result.error = e.name+":" + e.message;
- }
- result.assertions = Assert.assertionsMade - preAssertCount;
- if (preAssertCount == Assert.assertionsMade) {
- result.warning = "WARNING: This test method appears to have zero Assertions";
- }
- if (result.pass) _successCount++;
- else _failCount++;
- _successfulAssertions += result.assertions;
- if (callback!=null) {
- callback(result);
- }
- }
-
-}
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/testshim/TestResult.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/testshim/TestResult.as b/manualtests/GenericTests/src/testshim/TestResult.as
deleted file mode 100644
index d9bc514..0000000
--- a/manualtests/GenericTests/src/testshim/TestResult.as
+++ /dev/null
@@ -1,56 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package testshim {
-public class TestResult {
- public function TestResult() {
- }
-
- public var testClass:String;
-
- public var testMethod:String;
-
- public var pass:Boolean;
-
- public var assertions:uint;
-
- public var error:String;
-
- public var hasVariance:Boolean;
-
- public var varianceTarget:String;
-
- public var varianceDescription:String;
-
- public var warning:String;
-
- public function toString(newline:String=null):String {
- if (newline==null) newline="\n";
- var s:String="";
- var postFix:String = testMethod+" in "+testClass;
- if (pass) {
- s += "PASSED ("+assertions+" assertions made) ["+postFix+"]";
- } else {
- s += "FAILED ( at assertion "+assertions+" in test method) ["+postFix+"]"+newline;
- s += "["+error+"]";
- }
- return s;
- }
-
-}
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/testsview/image/Flex.png
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/testsview/image/Flex.png b/manualtests/GenericTests/testsview/image/Flex.png
deleted file mode 100644
index cb68fec..0000000
Binary files a/manualtests/GenericTests/testsview/image/Flex.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/testsview/index.html
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/testsview/index.html b/manualtests/GenericTests/testsview/index.html
deleted file mode 100644
index 270b933..0000000
--- a/manualtests/GenericTests/testsview/index.html
+++ /dev/null
@@ -1,128 +0,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.
--->
-<!DOCTYPE html>
-<html>
-<head>
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <style>
- .boxLeft {
- display:inline-block;
- width:50% ;
- position:absolute;
- top:100px;
- bottom:15px;
- left:0px
- }
- .boxRight {
- display:inline-block;
- width:50% ;
- position:absolute;
- top:100px;
- bottom:15px;
- right:0px
- }
- .pageStyles {
- font-family: Arial,sans-serif;
- color: #333;
- background: #f5f5f5;
- font-size: 14px;
- line-height: 1.5;
- }
- h1 {
- font-size: 28px;
- line-height: 1.25;
- font-weight: normal;
- }
- em {
- font-weight: bold;
- }
- .logo {
- margin-right: 10px;
- float: left;
- width: 48px;
- height: 48px;
- border-radius: 50%;
- border: 0;
- margin: 0;
- padding: 0;
- }
- .titleContent {
- white-space:nowrap;
- }
- </style>
- <script type="text/javascript">
-
- console.API;
-
- if (typeof console._commandLineAPI !== 'undefined') {
- console.API = console._commandLineAPI; //chrome
- } else if (typeof console._inspectorCommandLineAPI !== 'undefined') {
- console.API = console._inspectorCommandLineAPI; //Safari
- } else if (typeof console.clear !== 'undefined') {
- console.API = console;
- }
-
- function swapJSBuild() {
- var button = document.getElementById("swapJsButton");
- var JS_RELEASE = "JS-Release";
- var JS_DEBUG = "JS-Debug";
- var SWAP_TO_RELEASE = "Swap To "+JS_RELEASE;
- var SWAP_TO_DEBUG = "Swap To "+JS_DEBUG;
- var debug = "../bin/js-debug/index.html";
- var release = "../bin/js-release/index.html";
- var jsIframe = document.getElementById("jsIframe");
- var status = document.getElementById("jsStatus");
- if (button && jsIframe) {
- var current = button.innerHTML;
- switch (current) {
- case SWAP_TO_RELEASE:
- console.API.clear();
- button.innerHTML = SWAP_TO_DEBUG;
- jsIframe.src = release;
- status.innerHTML = "Currently showing <em>"+JS_RELEASE+"</em>";;
- break;
- case SWAP_TO_DEBUG:
- console.API.clear();
- button.innerHTML = SWAP_TO_RELEASE;
- jsIframe.src = debug;
- status.innerHTML = "Currently showing <em>"+JS_DEBUG+"</em>";
- break;
- }
- }
- }
- </script>
-</head>
-<body class="pageStyles">
- <div>
- <div >
- <img class="logo" src="image/Flex.png" alt="Apache Flex logo">
- <div class="titleContent">
- <h1>FlexJS Framework Development Unit Tests</h1>
- </div>
- <div id="jsStatus" style="position: relative; display: inline-block;">Currently showing <em>JS-Debug</em></div>
- <button id="swapJsButton" onclick="swapJSBuild()" type="button" class="quoteButton TextButton" style="position: relative; display: inline-block;">Swap To JS-Release</button>
- </div>
- <div class="boxLeft">
- <iframe id="jsIframe" src="../bin/js-debug/index.html" frameborder="1" scrolling="no" height="100%" width="100%" align="left" ></iframe>
- </div>
- <div class="boxRight">
- <iframe id="swfIframe" src="../bin-debug/GenericTests.html" frameborder="1" scrolling="no" height="100%" width="100%" align="left" ></iframe>
- </div>
- </div>
-</body>
-</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/ImageTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/ImageTest/build.xml b/manualtests/ImageTest/build.xml
index 5b5fbfa..16bad87 100644
--- a/manualtests/ImageTest/build.xml
+++ b/manualtests/ImageTest/build.xml
@@ -23,48 +23,21 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="ImageTest" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
-
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/LanguageTests/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/LanguageTests/build.xml b/manualtests/LanguageTests/build.xml
index 6de5e8a..0e986cb 100644
--- a/manualtests/LanguageTests/build.xml
+++ b/manualtests/LanguageTests/build.xml
@@ -22,50 +22,25 @@
<project name="languagetests" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="LanguageTests" />
+
+ <property name="file_suffix" value="as" />
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compileas,build_example.compileasjs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/ListsTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/ListsTest/build.xml b/manualtests/ListsTest/build.xml
index e6d7c8b..4acc6da 100644
--- a/manualtests/ListsTest/build.xml
+++ b/manualtests/ListsTest/build.xml
@@ -25,47 +25,20 @@
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/ProxyTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/ProxyTest/build.xml b/manualtests/ProxyTest/build.xml
index 2e1bcb7..83084b6 100644
--- a/manualtests/ProxyTest/build.xml
+++ b/manualtests/ProxyTest/build.xml
@@ -23,50 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="ProxyTest" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <!-- use this to add keep metadata option -->
- <property name="theme_arg" value="-keep-as3-metadata+=Event" />
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/ReflectionTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/ReflectionTest/build.xml b/manualtests/ReflectionTest/build.xml
index d65e7a8..b9bfd2c 100644
--- a/manualtests/ReflectionTest/build.xml
+++ b/manualtests/ReflectionTest/build.xml
@@ -23,50 +23,22 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="ReflectionTest" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <!-- use this to add keep metadata option -->
- <property name="theme_arg" value="-keep-as3-metadata+=Event" />
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/RollEventsTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/RollEventsTest/build.xml b/manualtests/RollEventsTest/build.xml
index 767c856..3dedfed 100644
--- a/manualtests/RollEventsTest/build.xml
+++ b/manualtests/RollEventsTest/build.xml
@@ -23,48 +23,23 @@
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="RollEventsTest" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
+
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/TLFEditTestFlexJS/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/TLFEditTestFlexJS/build.xml b/manualtests/TLFEditTestFlexJS/build.xml
index fc35c60..24985be 100644
--- a/manualtests/TLFEditTestFlexJS/build.xml
+++ b/manualtests/TLFEditTestFlexJS/build.xml
@@ -22,51 +22,25 @@
<project name="TLFEditTestFlexJS" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="TLFEditTestFlexJS" />
+
<property name="swf.version" value="20" />
<property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler.jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler.jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/README.txt
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/README.txt b/manualtests/UnitTests/README.txt
new file mode 100644
index 0000000..98c2bae
--- /dev/null
+++ b/manualtests/UnitTests/README.txt
@@ -0,0 +1,61 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+DESCRIPTION
+
+The UnitTests application is a very basic form of unit testing primarily
+intended for FlexJS framework developers. It is a 'lite' version of a small portion of
+Flexunit code to support basic assertion tests.
+
+This Flex application may be run as a Flash SWF or cross-compiled (using Falcon JX)
+into JavaScript and HTML and run without Flash.
+
+There is a convenience html page inside the top level testsview directory for hosting the tests side-by-side
+that permits developers to refresh the test builds simultaneously and compare results in the browser, including the
+ability to toggle between JS-Debug and JS-Release builds.
+While this is primarily intended for framework developers, it may be useful as a starting point
+for cross-compiled unit testing (during development only) in regular FlexJS projects.
+
+FRAMEWORK DEVELOPER NOTES
+To add new tests, follow the examples inside the flexUnitTests package, and add any new Test
+group or category level class (the classes directly inside flexUnitTests package) into the top
+level TestClasses.as file. This should be all that is necessary to add new tests.
+
+MetaData
+[BeforeClass] -same as flexunit (typical: 'setupBeforClass')- runs a static method before the test class is instantiated
+[AfterClass] -same as flexunit (typical: 'tearDownAfterClass')- runs a static method after the test class has been processed
+[Before] -same as flexunit (typical: 'setup') - runs an instance method before the test class' test methods are processed
+[After] -same as flexunit (typical: 'tearDown') - runs an instance method after the test class' test methods are processed
+[Test] -same as flexunit (typical: 'testXXXX') - denotes a test method. No assumption about order of test methods being called should be made
+
+[TestVariance(variance="JS",description="Reason for variation in JS expected results")]
+The above is specific to this test app, and permits annotation of test methods where the expected results are different between compiler targets.
+The variance key in the meta data should be either "SWF" or "JS". This is the compiler target with the result that is considered to be different
+to what it ideally 'should be', but correct as per the current implementation of the framework. Usually this will be "JS". It indicates a known
+but currently acceptable difference between compiler targets.
+
+
+GENERAL NOTES
+
+In its first working version this app only supports synchronous simple assertions and
+is intended to use test classes that are compatible with the flexunit tests that are
+used in the full framework build. Future versions may include more advanced features.
+
+The cross-compilation to JavaScript often results in non-fatal warnings. Some of these warnings
+should be addressed in future releases of the Falcon JX compiler.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/build.xml b/manualtests/UnitTests/build.xml
new file mode 100644
index 0000000..68d82b3
--- /dev/null
+++ b/manualtests/UnitTests/build.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+
+
+<project name="GenericTests" default="main" basedir=".">
+ <property name="FLEXJS_HOME" location="../.."/>
+ <property name="example" value="UnitTests" />
+
+ <!-- adding flexuint style meta collection, and additional testing meta tags (Event,Bindable,TestMeta)-->
+ <property name="theme_arg" value="-keep-as3-metadata+=Test,BeforeClass,AfterClass,Before,After,TestVariance,Event,Bindable,TestMeta" />
+ <!-- adding flexuint style meta collection, and additional testing meta tags (Event,Bindable,TestMeta)-->
+ <property name="extlib_arg" value="-keep-code-with-metadata=Test,BeforeClass,AfterClass,Before,After,TestVariance,TestMeta" />
+
+ <property file="${FLEXJS_HOME}/env.properties"/>
+ <property environment="env"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
+ <property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
+
+ <!-- make ant src and output consistent with maven -->
+ <property name="maven_compat" value="true"/>
+
+ <include file="${basedir}/../build_example.xml" />
+
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
+ </target>
+
+ <target name="clean">
+ <delete dir="${basedir}/bin" failonerror="false" />
+ <delete dir="${basedir}/bin-debug" failonerror="false" />
+ <delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
+ </target>
+
+ <target name="examine" depends="build_example.get.browser">
+ <echo message="View the swf and js unit tests side-by-side"/>
+ <exec executable="${browser}" dir="${basedir}" failonerror="true">
+ <arg value="file:///${basedir}/testsview/index.html"/>
+ </exec>
+ </target>
+
+</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/README.txt
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/README.txt b/manualtests/UnitTests/src/README.txt
new file mode 100644
index 0000000..4ef6e3f
--- /dev/null
+++ b/manualtests/UnitTests/src/README.txt
@@ -0,0 +1,61 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+DESCRIPTION
+
+The GenericTests application is a very basic form of unit testing primarily
+intended for FlexJS framework developers. It is a 'lite' version of a small portion of
+Flexunit code to support basic assertion tests.
+
+This Flex application may be run as a Flash SWF or cross-compiled (using Falcon JX)
+into JavaScript and HTML and run without Flash.
+
+There is a convenience html page for hosting the tests side-by-side that permits developers
+to refresh the test builds simultaneously and compare results in the browser, including the
+ability to toggle between JS-Debug and JS-Release builds.
+While this is primarily intended for framework developers, it may be useful as a starting point
+for cross-compiled unit testing (during development only) in regular FlexJS projects.
+
+FRAMEWORK DEVELOPER NOTES
+To add new tests, follow the examples inside the flexUnitTests package, and add any new Test
+group or category level class (the classes directly inside flexUnitTests package) into the top
+level TestClasses.as file. This should be all that is necessary to add new tests.
+
+MetaData
+[BeforeClass] -same as flexunit (typical: 'setupBeforClass')- runs a static method before the test class is instantiated
+[AfterClass] -same as flexunit (typical: 'tearDownAfterClass')- runs a static method after the test class has been processed
+[Before] -same as flexunit (typical: 'setup') - runs an instance method before the test class' test methods are processed
+[After] -same as flexunit (typical: 'tearDown') - runs an instance method after the test class' test methods are processed
+[Test] -same as flexunit (typical: 'testXXXX') - denotes a test method. No assumption about order of test methods being called should be made
+
+[TestVariance(variance="JS",description="Reason for variation in JS expected results")]
+The above is specific to this test app, and permits annotation of test methods where the expected results are different between compiler targets.
+The variance key in the meta data should be either "SWF" or "JS". This is the compiler target with the result that is considered to be different
+to what it ideally 'should be', but correct as per the current implementation of the framework. Usually this will be "JS". It indicates a known
+but currently acceptable difference between compiler targets.
+
+
+GENERAL NOTES
+
+In its first working version this app only supports synchronous simple assertions and
+is intended to use test classes that are compatible with the flexunit tests that are
+used in the full framework build. Future versions may include more advanced features.
+
+The cross-compilation to JavaScript often results in non-fatal warnings. Some of these warnings
+should be addressed in future releases of the Falcon JX compiler.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/config/compile-app-config.xml
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/config/compile-app-config.xml b/manualtests/UnitTests/src/main/config/compile-app-config.xml
new file mode 100644
index 0000000..00454bd
--- /dev/null
+++ b/manualtests/UnitTests/src/main/config/compile-app-config.xml
@@ -0,0 +1,25 @@
+<!--
+
+ 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>
+ <js-output-optimization>
+ <optimization>skipFunctionCoercions</optimization>
+ </js-output-optimization>
+ <compiler>
+ </compiler>
+</flex-config>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/MyInitialView.mxml b/manualtests/UnitTests/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..83497e1
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,190 @@
+<?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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:js="library://ns.apache.org/flexjs/basic"
+ xmlns:local="*"
+ xmlns:acc="org.apache.flex.html.accessories.*"
+ initComplete="runTests()"
+>
+
+ <fx:Style>
+ .title {
+ font-size: 16px;
+ font-weight: bold;
+ }
+ .body {
+ left:10px;
+ right:10px;
+ }
+ </fx:Style>
+
+ <fx:Script>
+ <![CDATA[
+ import org.apache.flex.html.Label;
+ import org.apache.flex.reflection.VariableDefinition;
+ import org.apache.flex.reflection.getDefinitionByName;
+ import org.apache.flex.reflection.describeType;
+ import org.apache.flex.reflection.TypeDefinition;
+
+ import testshim.FlexJSUnitTestRunner;
+ import testshim.TestResult;
+
+
+
+ private var _tests:Array;
+
+ public function runTests():void {
+ var label:Label;
+ var groups:Array = TestClasses.testClasses;
+ var spaces:String = PLATFORM == "JS" ? " " : " ";
+ while (groups.length) {
+ var testGroupClass:Class = groups.shift() as Class;
+ var td:TypeDefinition = describeType(testGroupClass);
+ label = new Label();
+ label.text = "Running " + td.name + " Tests";
+ output.addElement(label);
+ var testClasses:Array = td.variables;
+ testClasses.sortOn("name");
+ var i:uint = 0, l:uint = testClasses.length;
+ if (l == 0) {
+ label = new Label();
+ label.text = spaces+ "[Zero tests detected]";
+ output.addElement(label);
+ continue;
+ }
+ for (; i < l; i++) {
+ var varDef:VariableDefinition = testClasses[i];
+
+ var testClass:Class = getDefinitionByName(varDef.type.qualifiedName) as Class;
+ fails = [];
+ passes = [];
+ variances = [];
+ warnings = [];
+ var runner:FlexJSUnitTestRunner = new FlexJSUnitTestRunner(testClass, onTestResult);
+ runner.runTests();
+ label = new Label();
+
+ label.text = "TEST: " + runner.testingName + spaces + "Passed:" + runner.successCount + ", Failed:" + runner.failCount + ", assertions made:" + runner.successfulAssertions;
+ label.style = {color: runner.failCount == 0 ? "green" : "red"};
+ output.addElement(label);
+ if (runner.failCount > 0 || fails.length) {
+ //show any failing test details
+ appendTestResults(fails);
+ }
+ if (variances.length) {
+ appendTestResults(variances);
+ }
+ if (warnings.length) {
+ appendTestResults(warnings);
+ }
+ }
+ }
+
+ }
+
+
+ private var fails:Array;
+ private var passes:Array;
+ private var variances:Array;
+ private var warnings:Array;
+ public function onTestResult(result:TestResult):void {
+ if (result.pass) passes.push(result);
+ else fails.push(result);
+
+ if (result.hasVariance && result.pass) {
+ if (result.varianceTarget.indexOf(PLATFORM) != -1) {
+ //variance applies to this target
+ variances.push(result);
+ }
+ }
+
+ if (result.warning!=null && result.pass && !result.hasVariance) {
+ // a test result that would otherwise indicate a pass, but has a warning
+ warnings.push(result);
+ }
+ }
+
+ public function appendTestResults(array:Array):void {
+ array = array.slice();
+ var spaces:String = " ";
+ var newline:String = "\n" ;
+ while (array.length) {
+ var result:TestResult = array.shift();
+ var label:Label = new Label();
+ //label.x=10; <- fails in js, using 'spaces' below instead
+ var message:String = spaces + result.toString(newline +spaces);
+
+ if (result.hasVariance)
+ message = spaces + "VARIANCE:" + result.varianceDescription + newline + message ;
+ if (result.warning != null) {
+ message = spaces + result.warning +newline +message;
+ }
+ if (PLATFORM == "JS") {
+ message = escapeForHtml(message);
+ var jsSpaces:String = spaces.split(" ").join(" ");
+ message = message.split(spaces).join(jsSpaces);
+ }
+
+ label.text = message;
+
+ if (result.pass) {
+ var showOrange:Boolean = false;
+ if (result.hasVariance || result.warning!=null) showOrange = true;
+ label.style = {color: showOrange ? 0xFFA500 : "green"};
+ } else label.style = {color: "red"};
+ output.addElement(label);
+ }
+ }
+
+ private static function escapeForHtml( string : String ) : String {
+ return string.split("<").join("<").split(">").join(">").split("\n").join("<br/>");
+ }
+
+
+ private static function getPlatform():String {
+ try {
+ var check:* = getDefinitionByName("flash.system.Capabilities");
+ } catch (e:Error) {
+ return "JS";
+ }
+ //if this next reference to 'check' is not included, then the above try/catch code
+ // appears to be optimized away in js-release mode
+ //[this issue was added to ObservedBugs Tests]
+ if (check == null) {
+ return "JS";
+ }
+ return "SWF";
+ }
+
+ public static const PLATFORM:String = getPlatform();
+ ]]>
+ </fx:Script>
+ <js:beads>
+ <js:ViewDataBinding/>
+ </js:beads>
+ <js:Group id="cont" height="50" className="body">
+ <js:Label text="{PLATFORM} Cross-compiled Unit Tests" className="title" />
+ </js:Group>
+ <js:Group id="output" height="700" y="50" className="body">
+ <js:beads>
+ <js:VerticalFlexLayout />
+ </js:beads>
+ </js:Group>
+</js:View>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/README.txt
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/README.txt b/manualtests/UnitTests/src/main/flex/README.txt
new file mode 100644
index 0000000..4ef6e3f
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/README.txt
@@ -0,0 +1,61 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+DESCRIPTION
+
+The GenericTests application is a very basic form of unit testing primarily
+intended for FlexJS framework developers. It is a 'lite' version of a small portion of
+Flexunit code to support basic assertion tests.
+
+This Flex application may be run as a Flash SWF or cross-compiled (using Falcon JX)
+into JavaScript and HTML and run without Flash.
+
+There is a convenience html page for hosting the tests side-by-side that permits developers
+to refresh the test builds simultaneously and compare results in the browser, including the
+ability to toggle between JS-Debug and JS-Release builds.
+While this is primarily intended for framework developers, it may be useful as a starting point
+for cross-compiled unit testing (during development only) in regular FlexJS projects.
+
+FRAMEWORK DEVELOPER NOTES
+To add new tests, follow the examples inside the flexUnitTests package, and add any new Test
+group or category level class (the classes directly inside flexUnitTests package) into the top
+level TestClasses.as file. This should be all that is necessary to add new tests.
+
+MetaData
+[BeforeClass] -same as flexunit (typical: 'setupBeforClass')- runs a static method before the test class is instantiated
+[AfterClass] -same as flexunit (typical: 'tearDownAfterClass')- runs a static method after the test class has been processed
+[Before] -same as flexunit (typical: 'setup') - runs an instance method before the test class' test methods are processed
+[After] -same as flexunit (typical: 'tearDown') - runs an instance method after the test class' test methods are processed
+[Test] -same as flexunit (typical: 'testXXXX') - denotes a test method. No assumption about order of test methods being called should be made
+
+[TestVariance(variance="JS",description="Reason for variation in JS expected results")]
+The above is specific to this test app, and permits annotation of test methods where the expected results are different between compiler targets.
+The variance key in the meta data should be either "SWF" or "JS". This is the compiler target with the result that is considered to be different
+to what it ideally 'should be', but correct as per the current implementation of the framework. Usually this will be "JS". It indicates a known
+but currently acceptable difference between compiler targets.
+
+
+GENERAL NOTES
+
+In its first working version this app only supports synchronous simple assertions and
+is intended to use test classes that are compatible with the flexunit tests that are
+used in the full framework build. Future versions may include more advanced features.
+
+The cross-compilation to JavaScript often results in non-fatal warnings. Some of these warnings
+should be addressed in future releases of the Falcon JX compiler.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/TestClasses.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/TestClasses.as b/manualtests/UnitTests/src/main/flex/TestClasses.as
new file mode 100644
index 0000000..f7273c0
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/TestClasses.as
@@ -0,0 +1,37 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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
+{
+ //test groups
+ import flexUnitTests.*;
+
+
+ public class TestClasses
+ {
+
+ public static function get testClasses():Array {
+ return [
+ CoreTester,
+ ReflectionTester,
+ ObservedBugsTester,
+ JiraIssuesTester
+ ];
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/UnitTests.mxml
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/UnitTests.mxml b/manualtests/UnitTests/src/main/flex/UnitTests.mxml
new file mode 100644
index 0000000..0db0af9
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/UnitTests.mxml
@@ -0,0 +1,39 @@
+<?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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:local="*"
+ xmlns:models="models.*"
+ xmlns:controllers="controllers.*"
+ xmlns:js="library://ns.apache.org/flexjs/basic"
+ >
+ <fx:Style>
+ @namespace js "library://ns.apache.org/flexjs/basic";
+ js|Application {
+ background-color:#ffffff ;
+ }
+ </fx:Style>
+ <js:valuesImpl>
+ <js:SimpleCSSValuesImpl />
+ </js:valuesImpl>
+ <js:initialView>
+ <local:MyInitialView />
+ </js:initialView>
+</js:Application>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/CoreTester.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/CoreTester.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/CoreTester.as
new file mode 100644
index 0000000..9af36e3
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/CoreTester.as
@@ -0,0 +1,43 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests
+{
+ import flexUnitTests.core.*
+
+ [Suite]
+ [RunWith("org.flexunit.runners.Suite")]
+ public class CoreTester
+ {
+ public function CoreTester()
+ {
+ // for JS, force-link these classes in the output
+ var arr:Array = [StrandTesterTest, BinaryDataTesterTest];
+ }
+
+ // in JS, using a class as a type won't include the class in
+ // the output since types are not chcked in JS. It is when
+ // the actual class is referenced that it will be included
+ // in the output.
+ // Is there a reason to use reflection to gather the set
+ // of tests? I would think an array of tests would wokr
+ // better and allow you to define order.
+ public var strandTesterTest:StrandTesterTest;
+ public var binaryDataTesterTest:BinaryDataTesterTest;
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/JiraIssuesTester.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/JiraIssuesTester.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/JiraIssuesTester.as
new file mode 100644
index 0000000..fc37533
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/JiraIssuesTester.as
@@ -0,0 +1,29 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests
+{
+ import flexUnitTests.jira.*
+
+ [Suite]
+ [RunWith("org.flexunit.runners.Suite")]
+ public class JiraIssuesTester
+ {
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/ObservedBugsTester.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/ObservedBugsTester.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/ObservedBugsTester.as
new file mode 100644
index 0000000..11f62e3
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/ObservedBugsTester.as
@@ -0,0 +1,33 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests
+{
+ import flexUnitTests.observedbugs.*
+
+ [Suite]
+ [RunWith("org.flexunit.runners.Suite")]
+ public class ObservedBugsTester
+ {
+ public function ObservedBugsTester()
+ {
+ var arr:Array = [ObservedBugTests];
+ }
+ public var observedBugsTest1:ObservedBugTests;
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/ReflectionTester.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/ReflectionTester.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/ReflectionTester.as
new file mode 100644
index 0000000..74c5b4d
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/ReflectionTester.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests
+{
+ import flexUnitTests.reflection.*;
+
+ [Suite]
+ [RunWith("org.flexunit.runners.Suite")]
+ public class ReflectionTester
+ {
+ public function ReflectionTester()
+ {
+ // see notes in CoreTester
+ var arr:Array = [ReflectionTesterTest, ReflectionTesterTestUseCache, ReflectionTesterTestAlias];
+ }
+
+ public var reflectionTesterCacheTest:ReflectionTesterTestUseCache;
+ public var reflectionTesterTest:ReflectionTesterTest;
+
+ public var reflectionTesterAliasTest:ReflectionTesterTestAlias;
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/core/BinaryDataTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/core/BinaryDataTesterTest.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/core/BinaryDataTesterTest.as
new file mode 100644
index 0000000..b10d18c
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/core/BinaryDataTesterTest.as
@@ -0,0 +1,567 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.core
+{
+
+
+ import org.apache.flex.utils.Endian;
+ import flexunit.framework.Assert;
+ import org.apache.flex.utils.BinaryData
+
+
+ public class BinaryDataTesterTest
+ {
+
+ [Before]
+ public function setUp():void {
+ }
+
+ [After]
+ public function tearDown():void {
+ }
+
+ [BeforeClass]
+ public static function setUpBeforeClass():void {
+ }
+
+ [AfterClass]
+ public static function tearDownAfterClass():void {
+ }
+
+
+ //util check functions
+ private static function bytesMatchExpectedData(bd:BinaryData,expected:Array,offset:int=0):Boolean{
+ var len:uint = expected.length;
+ var end:uint=offset+len;
+ for (var i:int=offset;i<end;i++) {
+ var check:uint = bd.readByteAt(i);
+ if (expected[i-offset]!=check) {
+ // trace('failed at ',i,expected[i-offset],check);
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private static function reversedBytesMatch(bd1:BinaryData,bd2:BinaryData,len:uint,offset:int=0):Boolean{
+ var end:uint=offset+len;
+ for (var i:int=offset;i<end;i++) {
+ if (bd1.readByteAt(i) != bd2.readByteAt(end-1-i)) return false;
+ }
+ return true;
+
+ }
+
+
+ [Test]
+ public function testBasicPositionAndLength():void
+ {
+ var ba:BinaryData = new BinaryData();
+
+ Assert.assertEquals("new Instance, position", 0, ba.position);
+ Assert.assertEquals("new Instance, length", 0, ba.length);
+
+ ba.position=100;
+ Assert.assertEquals("position change, position", 100, ba.position);
+ Assert.assertEquals("position change, length", 0, ba.length);
+ Assert.assertEquals("position change, length", 0, ba.bytesAvailable);
+
+ ba.length=100;
+ Assert.assertEquals("length change, position", 100, ba.position);
+ Assert.assertEquals("length change, length", 100, ba.length);
+
+ ba.length=50;
+ Assert.assertEquals("length change, position", 50, ba.position);
+ Assert.assertEquals("length change, length", 50, ba.length);
+
+
+ }
+
+ [Test]
+ public function testAdvancedPositionAndLength():void
+ {
+ var ba:BinaryData = new BinaryData();
+
+ ba.position=100;
+ ba.length=100;
+
+ ba.writeByteAt(49,255);
+ Assert.assertEquals("writeByteAt does not affect position",100, ba.position);
+ Assert.assertEquals("writeByteAt (internal) does not affect length",100, ba.length);
+
+ ba.readByteAt(48);
+ Assert.assertEquals("readByteAt does not affect position",100, ba.position);
+ Assert.assertEquals("readByteAt does not affect length",100, ba.length);
+
+ ba.writeByteAt(199,255);
+ Assert.assertEquals("writeByteAt (beyond length) does affect length",200, ba.length);
+ Assert.assertEquals("writeByteAt (beyond length) does not affect position",100, ba.position);
+
+ Assert.assertStrictlyEquals("out of range byte read request",0 ,ba.readByteAt(205));
+
+ }
+
+
+ [Test]
+ public function testUTFWritePosition():void
+ {
+ var ba:BinaryData = new BinaryData();
+ ba.writeUTF('This is a test');
+ //writeUTF
+ Assert.assertEquals("basic post-writeUTF position", 16, ba.position);
+ ba=new BinaryData();
+ ba.writeUTFBytes('This is a test');
+ //writeUTFBytes
+ Assert.assertEquals("basic post-writeUTFBytes position", 14, ba.position);
+
+ //overlapping
+ ba.position=5;
+ ba.writeUTFBytes('This is a test');
+ Assert.assertEquals("Advanced post-writeUTFBytes position (overlap)", 19, ba.position);
+
+ }
+
+ [Test]
+ public function testBooleanRoundTripping():void
+ {
+ var ba:BinaryData = new BinaryData();
+ ba.writeBoolean(true);
+ ba.writeBoolean(false);
+ ba.position = 0;
+ Assert.assertTrue(ba.readBoolean());
+ Assert.assertFalse(ba.readBoolean());
+ }
+
+ [Test]
+ public function testByteRoundTripping():void
+ {
+ var ba:BinaryData = new BinaryData();
+ ba.writeByte(255);
+ ba.writeByte(256);
+ ba.writeByte(-256);
+ ba.writeByte(-257);
+ ba.writeByte(-128);
+ ba.writeByte(128);
+ ba.writeByte(127);
+ ba.writeByte(-50);
+ ba.writeByte(50);
+ ba.position = 0;
+
+
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -1, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 0, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 0, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -1, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -128, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -128, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 127, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -50, ba.readByte());
+ Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 50, ba.readByte());
+ }
+
+
+ [Test]
+ public function testUnsignedByteRoundTripping():void
+ {
+ var ba:BinaryData = new BinaryData();
+ ba.writeByte(255);
+ ba.writeByte(256);
+ ba.writeByte(-256);
+ ba.writeByte(-257);
+ ba.writeByte(-128);
+ ba.writeByte(128);
+ ba.writeByte(127);
+ ba.writeByte(-50);
+ ba.writeByte(50);
+ ba.position = 0;
+ //check read values
+
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 255, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 0, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 0, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 255, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 128, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 128, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 127, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 206, ba.readUnsignedByte());
+ Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 50, ba.readUnsignedByte());
+ }
+
+
+ [Test]
+ public function testBasicEndian():void
+ {
+
+ var systemEndian:String = Endian.systemEndian;
+ //check we have a decisive systemEndian detection
+ Assert.assertNotNull(systemEndian );
+
+
+ var ba:BinaryData = new BinaryData();
+ var defaultEndian:String = ba.endian;
+
+ var alternateEndian:String = (defaultEndian == Endian.BIG_ENDIAN) ? Endian.LITTLE_ENDIAN : Endian.BIG_ENDIAN;
+ var expected:Object ={};
+ expected[Endian.BIG_ENDIAN] = 218038271;
+ expected[Endian.LITTLE_ENDIAN] = 4294966796;
+ var bytes:Array = [12, 254, 255, 255];
+ for each(var byte:uint in bytes) ba.writeByte(byte);
+ ba.position = 0;
+
+ Assert.assertEquals("testing endian:"+defaultEndian, expected[defaultEndian] , ba.readUnsignedInt());
+
+ ba.position = 0;
+ ba.endian = alternateEndian;
+ var result:uint = ba.readUnsignedInt();
+
+ Assert.assertEquals("testing endian:"+alternateEndian, expected[alternateEndian], result);
+
+ ba.position = 0;
+ ba.endian = defaultEndian;
+ Assert.assertEquals("testing endian:"+defaultEndian, int(expected[defaultEndian]), ba.readInt());
+
+ ba.position = 0;
+ ba.endian = alternateEndian;
+ Assert.assertEquals("testing endian:"+alternateEndian, int(expected[alternateEndian]), ba.readInt());
+
+ var leBA:BinaryData = new BinaryData();
+ leBA.endian = Endian.LITTLE_ENDIAN;
+ var beBA:BinaryData = new BinaryData();
+ beBA.endian = Endian.BIG_ENDIAN;
+ //int writing
+ beBA.writeInt(-500);
+ leBA.writeInt(-500);
+ //check they represent reversed byte sequence
+ Assert.assertTrue(reversedBytesMatch(beBA,leBA,4));
+ beBA.position=0;
+ leBA.position=0;
+ //check they each read back to the same uint value
+ Assert.assertEquals('big endian',4294966796,beBA.readUnsignedInt());
+ Assert.assertEquals('little endian',4294966796,leBA.readUnsignedInt());
+
+ beBA.position=0;
+ leBA.position=0;
+ //uint writing
+ beBA.writeUnsignedInt(4294966796);
+ leBA.writeUnsignedInt(4294966796);
+ //check they represent reversed byte sequence
+ Assert.assertTrue(reversedBytesMatch(beBA,leBA,4));
+ beBA.position=0;
+ leBA.position=0;
+ //check they each read back to the same uint value
+ Assert.assertEquals('big endian',4294966796,beBA.readUnsignedInt());
+ Assert.assertEquals('little endian',4294966796,leBA.readUnsignedInt());
+
+
+ beBA.position=0;
+ leBA.position=0;
+
+ //check they each read back to the same int value
+ Assert.assertEquals('big endian',-500,beBA.readInt());
+ Assert.assertEquals('little endian',-500,leBA.readInt());
+
+
+ beBA.position=0;
+ leBA.position=0;
+
+ //short writing
+ beBA.writeShort(-500);
+ leBA.writeShort(-500);
+ //check they represent reversed byte sequence
+ Assert.assertTrue(reversedBytesMatch(beBA,leBA,2));
+ beBA.position=0;
+ leBA.position=0;
+ //check they each read back to the same uint value
+ Assert.assertEquals('big endian',65036,beBA.readUnsignedShort());
+ Assert.assertEquals('little endian',65036,leBA.readUnsignedShort());
+
+
+ beBA.position=0;
+ leBA.position=0;
+
+ //check they each read back to the same int value
+ Assert.assertEquals('big endian',-500,beBA.readShort());
+ Assert.assertEquals('little endian',-500,leBA.readShort());
+
+ }
+
+
+ [Test]
+ public function testUTFRoundtripping():void
+ {
+
+ //test big-endian round-tripping
+ var ba:BinaryData = new BinaryData();
+ ba.endian = Endian.BIG_ENDIAN;
+ ba.writeUTF('This is a test');
+ //writeUTF
+ Assert.assertEquals("basic post-writeUTF position", 16, ba.position);
+ ba.position = 0;
+ Assert.assertEquals("utf big endian round-tripping", 'This is a test', ba.readUTF());
+
+ ba = new BinaryData();
+ //test little-endian round-tripping
+ ba.endian = Endian.LITTLE_ENDIAN;
+ ba.writeUTF('This is a test');
+ //writeUTF
+ Assert.assertEquals("basic post-writeUTF position", 16, ba.position);
+ ba.position = 0;
+ Assert.assertEquals("utf big endian round-tripping", 'This is a test', ba.readUTF());
+
+ }
+
+
+ [Test]
+ public function testShortRoundTripping():void
+ {
+ var ba:BinaryData = new BinaryData();
+ //test LITTLE_ENDIAN round-tripping
+ ba.endian = Endian.LITTLE_ENDIAN;
+ ba.writeShort(255);
+ ba.writeShort(-50);
+ ba.writeShort(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 6, ba.length);
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 255, ba.readShort());
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", -50, ba.readShort());
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 50, ba.readShort());
+
+ //test BIG_ENDIAN round-tripping
+
+ ba.position = 0;
+ ba.endian = Endian.BIG_ENDIAN ;
+ ba.writeShort(255);
+ ba.writeShort(-50);
+ ba.writeShort(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 6, ba.length);
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 255, ba.readShort());
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", -50, ba.readShort());
+ Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 50, ba.readShort());
+ }
+
+
+ [Test]
+ public function testUnsignedShortRoundTripping():void
+ {
+ var ba:BinaryData = new BinaryData();
+ //test LITTLE_ENDIAN round-tripping
+ ba.endian = Endian.LITTLE_ENDIAN;
+ ba.writeShort(255);
+ ba.writeShort(-50);
+ ba.writeShort(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 6, ba.length);
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 255, ba.readUnsignedShort());
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 65486, ba.readUnsignedShort());
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 50, ba.readUnsignedShort());
+
+ //test BIG_ENDIAN round-tripping
+
+ ba.position = 0;
+ ba.endian = Endian.BIG_ENDIAN ;
+ ba.writeShort(255);
+ ba.writeShort(-50);
+ ba.writeShort(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 6, ba.length);
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 255, ba.readUnsignedShort());
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 65486, ba.readUnsignedShort());
+ Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 50, ba.readUnsignedShort());
+ }
+
+ [Test]
+ public function testIntRoundTripping():void
+ {
+ var ba:BinaryData = new BinaryData();
+ //test LITTLE_ENDIAN round-tripping
+ ba.endian = Endian.LITTLE_ENDIAN;
+ ba.writeInt(65536);
+ ba.writeInt(-50);
+ ba.writeInt(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 65536, ba.readInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", -50, ba.readInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readInt());
+
+ //test BIG_ENDIAN round-tripping
+
+ ba.position = 0;
+ ba.endian = Endian.BIG_ENDIAN ;
+ ba.writeInt(65536);
+ ba.writeInt(-50);
+ ba.writeInt(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 65536, ba.readInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", -50, ba.readInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readInt());
+ }
+
+
+ [Test]
+ public function testUnsignedIntRoundTripping():void
+ {
+ var ba:BinaryData = new BinaryData();
+ //test LITTLE_ENDIAN round-tripping
+ ba.endian = Endian.LITTLE_ENDIAN;
+ ba.writeUnsignedInt(65536);
+ ba.writeUnsignedInt(-50);
+ ba.writeUnsignedInt(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping",65536, ba.readUnsignedInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 4294967246, ba.readUnsignedInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readUnsignedInt());
+
+ //test BIG_ENDIAN round-tripping
+
+ ba.position = 0;
+ ba.endian = Endian.BIG_ENDIAN ;
+ ba.writeUnsignedInt(65536);
+ ba.writeUnsignedInt(-50);
+ ba.writeUnsignedInt(50);
+ ba.position = 0;
+
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping",65536, ba.readUnsignedInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 4294967246, ba.readUnsignedInt());
+ Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readUnsignedInt());
+ }
+
+ [Test]
+ public function testFloatRoundTripping():void
+ {
+ var ble:BinaryData = new BinaryData();
+ //test LITTLE_ENDIAN round-tripping
+ ble.endian = Endian.LITTLE_ENDIAN;
+ ble.writeFloat(86.54);
+
+
+ Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, ble.length);
+ Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, ble.position);
+ //check bytes to account for precision loss between double and float comparisons
+ Assert.assertTrue("Error testing post writeFloat/readFloat round-tripping", bytesMatchExpectedData(ble,[123,20,173,66]));
+
+ var bbe:BinaryData = new BinaryData();
+ //test BIG_ENDIAN round-tripping
+ bbe.endian = Endian.BIG_ENDIAN;
+ bbe.writeFloat(86.54);
+
+
+ Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, bbe.length);
+ Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, bbe.position);
+ //check bytes to account for precision loss between double and float comparisons
+ Assert.assertTrue("Error testing post writeFloat/readFloat round-tripping", bytesMatchExpectedData(bbe,[66,173,20,123]));
+
+
+ }
+
+
+ [Test]
+ public function testDoubleRoundTripping():void
+ {
+
+ var ble:BinaryData = new BinaryData();
+ //test LITTLE_ENDIAN round-tripping
+ ble.endian = Endian.LITTLE_ENDIAN;
+ ble.writeDouble(86.54);
+
+
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, ble.length);
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, ble.position);
+
+ //check bytes
+ Assert.assertTrue("Error testing post writeDouble/readDouble round-tripping", bytesMatchExpectedData(ble,[195,245,40,92,143,162,85,64]));
+
+ var bbe:BinaryData = new BinaryData();
+ //test BIG_ENDIAN round-tripping
+ bbe.endian = Endian.BIG_ENDIAN;
+ bbe.writeDouble(86.54);
+
+
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, bbe.length);
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, bbe.position);
+ //check bytes
+
+ Assert.assertTrue("Error testing post writeDouble/readDouble round-tripping", bytesMatchExpectedData(bbe,[64,85,162,143,92,40,245,195]));
+
+
+ ble.position = 0;
+ bbe.position = 0;
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 86.54, bbe.readDouble());
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 86.54, ble.readDouble());
+
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, bbe.position);
+ Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, ble.position);
+
+ }
+
+
+
+ [Test]
+ public function testWriteBytes():void
+ {
+ var ba:BinaryData = new BinaryData();
+ for (var i:int=0;i<50;i++) ba.writeByte(i);
+
+
+ var newBa:BinaryData = new BinaryData();
+ newBa.writeBytes(ba);
+
+ Assert.assertEquals("BinaryData writeBytes: length", 50, newBa.length);
+ Assert.assertEquals("BinaryData writeBytes: position", 50, newBa.position);
+
+ for (i=0;i<50;i++) {
+ Assert.assertEquals("BinaryData writeBytes: content check", i, newBa.array[i]);
+ }
+
+
+
+ }
+
+ [Test]
+ public function testReadBytes():void
+ {
+ var ba:BinaryData = new BinaryData();
+ for (var i:int=0;i<50;i++) ba.writeByte(i);
+ ba.position=0;
+ var newBa:BinaryData = new BinaryData();
+
+ ba.readBytes(newBa,5,10);
+ Assert.assertEquals("BinaryData readBytes: position", 10, ba.position);
+ Assert.assertEquals("BinaryData readBytes: length", 15, newBa.length);
+ Assert.assertEquals("BinaryData readBytes: position", 0, newBa.position);
+ var expected:Array = [0,0,0,0,0,0,1,2,3,4,5,6,7,8,9];
+ for (i=5;i<15;i++) {
+ Assert.assertEquals("BinaryData readBytes: content check", expected[i], newBa.array[i]);
+ }
+ }
+
+
+ }
+}
[11/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
-refactored ant builds of manual tests to be closer to examples,
and support for 'maven_compat' from test level ant scripts. -renamed
GenericTests to UnitTests and fixed some display issu
Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/build.xml b/manualtests/build.xml
index fc658f3..99f9b76 100644
--- a/manualtests/build.xml
+++ b/manualtests/build.xml
@@ -74,7 +74,9 @@
</target>
<target name="compile" description="Compile Examples" >
+ <ant dir="${basedir}/BubbleTest"/>
<ant dir="${basedir}/ContainerTest"/>
+ <ant dir="${basedir}/CursorTest"/>
<ant dir="${basedir}/DateChooserExample"/>
<ant dir="${basedir}/EffectsExample"/>
<ant dir="${basedir}/FlexJSTest_basic"/>
@@ -87,8 +89,11 @@
<ant dir="${basedir}/ImageTest"/>
<ant dir="${basedir}/LanguageTests"/>
<ant dir="${basedir}/ListsTest"/>
+ <ant dir="${basedir}/ProxyTest"/>
+ <ant dir="${basedir}/ReflectionTest"/>
<ant dir="${basedir}/RollEventsTest"/>
- <ant dir="${basedir}/ReflectionTest"/>
+ <ant dir="${basedir}/TLFEditTestFlexJS"/>
+ <ant dir="${basedir}/UnitTests" />
<ant dir="${basedir}/XMLTest"/>
</target>
@@ -103,9 +108,10 @@
</target>
<target name="clean" description="Cleans all SWCs and their resource bundles">
+ <ant dir="${basedir}/BubbleTest" target="clean"/>
<ant dir="${basedir}/ContainerTest" target="clean"/>
- <ant dir="${basedir}/DataBindingTestbed" target="clean"/>
- <ant dir="${basedir}/DateChooserExample" target="clean"/>
+ <ant dir="${basedir}/CursorTest" target="clean"/>
+ <ant dir="${basedir}/DateChooserExample" target="clean"/>
<ant dir="${basedir}/EffectsExample" target="clean"/>
<ant dir="${basedir}/FlexJSTest_basic" target="clean"/>
<ant dir="${basedir}/FlexJSTest_createjs" target="clean"/>
@@ -114,12 +120,14 @@
<ant dir="${basedir}/FlexJSTest_Panel" target="clean"/>
<ant dir="${basedir}/FlexJSTest_SVG" target="clean"/>
<ant dir="${basedir}/FormExample" target="clean"/>
- <ant dir="${basedir}/FormatExample" target="clean"/>
<ant dir="${basedir}/ImageTest" target="clean"/>
<ant dir="${basedir}/LanguageTests" target="clean"/>
<ant dir="${basedir}/ListsTest" target="clean"/>
+ <ant dir="${basedir}/ProxyTest" target="clean"/>
+ <ant dir="${basedir}/ReflectionTest" target="clean"/>
<ant dir="${basedir}/RollEventsTest" target="clean"/>
- <ant dir="${basedir}/ReflectionTest" target="clean"/>
+ <ant dir="${basedir}/TLFEditTestFlexJS" target="clean"/>
+ <ant dir="${basedir}/UnitTests" target="clean"/>
<ant dir="${basedir}/XMLTest" target="clean"/>
</target>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/build_example.xml
----------------------------------------------------------------------
diff --git a/manualtests/build_example.xml b/manualtests/build_example.xml
index 62d98b6..586ac49 100644
--- a/manualtests/build_example.xml
+++ b/manualtests/build_example.xml
@@ -20,82 +20,243 @@
<project name="build_example" basedir=".">
+ <condition property="FALCON_HOME" value="${env.FALCON_HOME}">
+ <and>
+ <not>
+ <isset property="FALCON_HOME" />
+ </not>
+ <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar" type="file" />
+ </and>
+ </condition>
+
+ <condition property="FALCON_HOME" value="${FLEXJS_HOME}/../flex-falcon/compiler">
+ <and>
+ <not>
+ <isset property="FALCON_HOME" />
+ </not>
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler/lib/falcon-mxmlc.jar" type="file" />
+ </and>
+ </condition>
+
+ <condition property="FALCON_HOME" value="${FLEXJS_HOME}">
+ <and>
+ <not>
+ <isset property="FALCON_HOME" />
+ </not>
+ <available file="${FLEXJS_HOME}/lib/falcon-mxmlc.jar" type="file" />
+ </and>
+ </condition>
+
+ <condition property="FALCONJX_HOME" value="${env.FALCONJX_HOME}">
+ <and>
+ <not>
+ <isset property="FALCONJX_HOME" />
+ </not>
+ <available file="${env.FALCONJX_HOME}/lib/jsc.jar" type="file" />
+ </and>
+ </condition>
+
+ <condition property="FALCONJX_HOME" value="${FLEXJS_HOME}/js">
+ <and>
+ <not>
+ <isset property="FALCONJX_HOME" />
+ </not>
+ <available file="${FLEXJS_HOME}/js/lib/jsc.jar" type="file" />
+ </and>
+ </condition>
+
+ <condition property="FALCONJX_HOME" value="${FLEXJS_HOME}/../flex-falcon/compiler-jx">
+ <and>
+ <not>
+ <isset property="FALCONJX_HOME" />
+ </not>
+ <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar" type="file" />
+ </and>
+ </condition>
+
+ <condition property="GOOG_HOME" value="${env.GOOG_HOME}">
+ <and>
+ <not>
+ <isset property="GOOG_HOME" />
+ </not>
+ <available file="${env.GOOG_HOME}/closure/goog/base.js" type="file" />
+ </and>
+ </condition>
+
+ <condition property="GOOG_HOME" value="${FLEXJS_HOME}/js/lib/google/closure-library">
+ <and>
+ <not>
+ <isset property="GOOG_HOME" />
+ </not>
+ <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js" type="file" />
+ </and>
+ </condition>
+
+ <condition property="adl" value="adl.exe">
+ <os family="windows"/>
+ </condition>
+
+ <condition property="adl" value="adl">
+ <os family="mac"/>
+ </condition>
+
+ <condition property="runtime" value="win">
+ <os family="windows"/>
+ </condition>
+
+ <condition property="runtime" value="mac">
+ <os family="mac"/>
+ </condition>
+
+ <property name="swf.version" value="14" />
+
+ <target name="get.browser" >
+ <condition property="browser" value="${env.ProgramFiles}/Mozilla Firefox/firefox.exe">
+ <and>
+ <os family="windows"/>
+ <available file="${env.ProgramFiles}/Mozilla Firefox/firefox.exe"
+ type="file" />
+ </and>
+ </condition>
+ <condition property="browser" value="${env.ProgramFiles(x86)}/Mozilla Firefox/firefox.exe">
+ <and>
+ <os family="windows"/>
+ <available file="${env.ProgramFiles(x86)}/Mozilla Firefox/firefox.exe"
+ type="file" />
+ </and>
+ </condition>
+ <condition property="browser" value="C:/Program Files/Internet Explorer/iexplore.exe">
+ <and>
+ <os family="windows"/>
+ <available file="C:/Program Files/Internet Explorer/iexplore.exe"
+ type="file" />
+ </and>
+ </condition>
+ <condition property="browser" value="/Applications/Firefox.app/Contents/MacOS/Firefox">
+ <and>
+ <os family="mac"/>
+ <available file="/Applications/Firefox.app/Contents/MacOS/Firefox"
+ type="file" />
+ </and>
+ </condition>
+ <condition property="browser" value="/Applications/Safari.app/Contents/MacOS/Safari">
+ <and>
+ <os family="mac"/>
+ <available file="/Applications/Safari.app/Contents/MacOS/Safari"
+ type="file" />
+ </and>
+ </condition>
+ <fail message="No browser found. See build_example.xml or set -Dbrowser=<path to browser>"
+ unless="browser"/>
+ </target>
+
<path id="lib.path">
<fileset dir="${FALCONJX_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ <fileset dir="${FALCONJX_HOME}/lib" includes="jsc.jar"/>
</path>
+
<target name="compile" description="Compiles ${example}">
- <echo message="Compiling ${example}.swf"/>
+ <echo message="Compiling ${example}.swf"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
-
- <!-- Load the <compc> task. We can't do this at the <project> level -->
+ <echo message="GOOG_HOME: ${GOOG_HOME}"/>
+ <condition property="srcDir" value="${basedir}/src" else="${basedir}/src/main/flex">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <condition property="destDir" value="${basedir}/bin-debug" else="${basedir}/target/bin-debug">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <condition property="jsDir" value="${basedir}" else="${basedir}/target/javascript">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <available file="${srcDir}/../config/compile-app-config.xml"
+ type="file"
+ property="optional_arg" value="-load-config+="${srcDir}/../config/compile-app-config.xml"" />
+
+ <condition property="targets" value="SWF,JSFlex" else="SWF">
+ <not>
+ <isset property="no.js"/>
+ </not>
+ </condition>
+ <!-- Load the <compc> task. We can't do this at the <project> level -->
<!-- because targets that run before flexTasks.jar gets built would fail. -->
<taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+ <property name="config_arg" value="flex" />
+ <property name="file_suffix" value="mxml" />
+ <property name="optional_arg" value="-define+=CONFIG::dummy,true" />
<!-- this is a dummy var placeholder in case some example needs to define a theme
then they would set theme_arg=-theme=<path to theme> -->
<property name="theme_arg" value="-define+=CONFIG::theme,false" />
- <mxmlc fork="true"
- file="${basedir}/src/${example}.mxml"
- output="${basedir}/bin-debug/${example}.swf">
+ <mxmlc fork="true"
+ debug="true"
+ configname="${config_arg}"
+ swf-version="${swf.version}"
+ closure-lib="${GOOG_HOME}"
+ file="${srcDir}/${example}.${file_suffix}"
+ output="${destDir}/${example}.swf">
<jvmarg line="${mxmlc.jvm.args}"/>
- <arg value="+flexlib=${basedir}/frameworks" />
- <arg value="-debug" />
- <arg value="${theme_arg}" />
- <arg value="-swf-version=${swf.version}" />
- <arg value="-compiler.mxml.children-as-data" />
- <arg value="-compiler.binding-value-change-event=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-kind=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-type=valueChange" />
- <arg value="-compiler.binding-event-handler-interface=org.apache.flex.events.IEventDispatcher" />
- <arg value="-compiler.binding-event-handler-class=org.apache.flex.events.EventDispatcher" />
- <arg value="-compiler.binding-event-handler-event=org.apache.flex.events.Event" />
+ <arg line="${optional_arg}" />
+ <arg value="${theme_arg}" />
+ <arg value="-targets=${targets}" />
<arg value="+playerglobal.version=${playerglobal.version}" />
- <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
- <arg value="-closure-lib=${GOOG_HOME}" />
+ <arg value="-js-output=${jsDir}" />
</mxmlc>
-
- <html-wrapper
- height="100%"
- width="100%"
- bgcolor="#ffffff"
- name="${example}"
- versionmajor="11"
- versionminor="1"
- versionrevision="0"
- output="${basedir}/bin-debug"/>
-
- <copy todir="${basedir}/bin-debug">
- <fileset dir="${basedir}/src">
+
+ <antcall target="build_example.wrapper">
+ <param name="output" value="${destDir}"/>
+ </antcall>
+
+ <copy todir="${destDir}">
+ <fileset dir="${srcDir}">
<include name="**/*.png" />
<include name="**/*.jpg" />
</fileset>
</copy>
- <copy todir="${basedir}/bin-debug/fonts">
+ <copy todir="${destDir}/fonts">
<fileset dir="${FLEX_HOME}/frameworks/fonts">
<include name="**/*.swf" />
</fileset>
</copy>
+
+ <antcall target="build_example.compile-js-release"/>
+ <antcall target="build_example.copy-app-xml" />
</target>
<target name="compileair" description="Compiles ${example}">
<echo message="Compiling ${example}.swf"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
+ <condition property="srcDir" value="${basedir}/src" else="${basedir}/src/main/flex">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <condition property="destDir" value="${basedir}/bin-debug" else="${basedir}/target/bin-debug">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
<!-- Load the <compc> task. We can't do this at the <project> level -->
<!-- because targets that run before flexTasks.jar gets built would fail. -->
<taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
<property name="theme_arg" value="-define=CONFIG::theme,false" />
<mxmlc fork="true"
- file="${basedir}/src/${example}.mxml"
- output="${basedir}/bin-debug/${example}.swf">
+ file="${srcDir}/${example}.mxml"
+ output="${destDir}/${example}.swf">
<jvmarg line="${mxmlc.jvm.args}"/>
<arg value="+flexlib=${basedir}/frameworks" />
<arg value="+configname=air" />
<arg value="-debug" />
<arg value="${theme_arg}" />
<arg value="-target-player=${playerglobal.version}" />
- <arg value="-swf-version=${swf.version}" />
+ <arg value="-swf-version=${swfVersion}" />
<arg value="-compiler.mxml.children-as-data" />
<arg value="-compiler.binding-value-change-event=org.apache.flex.events.ValueChangeEvent" />
<arg value="-compiler.binding-value-change-event-kind=org.apache.flex.events.ValueChangeEvent" />
@@ -108,13 +269,13 @@
<arg value="-closure-lib=${GOOG_HOME}" />
</mxmlc>
- <copy todir="${basedir}/bin-debug">
- <fileset dir="${basedir}/src">
+ <copy todir="${destDir}">
+ <fileset dir="${srcDir}">
<include name="*.png" />
</fileset>
</copy>
- <copy todir="${basedir}/bin-debug">
- <fileset dir="${basedir}">
+ <copy todir="${destDir}">
+ <fileset dir="${srcDir}">
<include name="*-app.xml" />
</fileset>
</copy>
@@ -123,14 +284,23 @@
<target name="compileas" description="Compiles ${example}">
<echo message="Compiling ${example}.swf"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
-
+ <condition property="srcDir" value="${basedir}/src" else="${basedir}/src/main/flex">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <condition property="destDir" value="${basedir}/bin-debug" else="${basedir}/target/bin-debug">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
<!-- Load the <compc> task. We can't do this at the <project> level -->
<!-- because targets that run before flexTasks.jar gets built would fail. -->
<taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
<property name="theme_arg" value="-define=CONFIG::theme,false" />
<mxmlc fork="true"
- file="${basedir}/src/${example}.as"
- output="${basedir}/bin-debug/${example}.swf">
+ file="${srcDir}/${example}.as"
+ output="${destDir}/${example}.swf">
<jvmarg line="${mxmlc.jvm.args}"/>
<arg value="+flexlib=${basedir}/frameworks" />
<arg value="-debug" />
@@ -149,157 +319,74 @@
<arg value="-closure-lib=${GOOG_HOME}" />
</mxmlc>
- <html-wrapper
- height="300"
- width="400"
- bgcolor="#ffffff"
- name="${example}"
- versionmajor="11"
- versionminor="1"
- versionrevision="0"
- output="${basedir}/bin-debug"/>
-
+ <antcall target="build_example.wrapper">
+ <param name="output" value="${destDir}"/>
+ </antcall>
</target>
-
- <target name="compilejs" description="Cross-compiles ${example}" unless="no.js">
- <echo message="Compiling ${example}.js"/>
+
+
+ <target name="compile-js-release" unless="no.js">
+ <echo message="Compiling ${example}.js"/>
<echo message="FLEX_HOME: ${FLEX_HOME}"/>
<echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
<echo message="GOOG_HOME: ${GOOG_HOME}"/>
- <property name="theme_arg" value="-define=CONFIG::theme,false" />
- <property name="extlib_arg" value="-define=CONFIG::extlib,false" />
-
- <java jar="${FALCONJX_HOME}/lib/mxmlc.jar" resultProperty="errorCode"
- fork="true">
+ <property name="js.release.target" value="JSFlex" />
+ <property name="extlib_arg" value="-define=CONFIG::extlib,false" />
+ <condition property="srcDir" value="${basedir}/src" else="${basedir}/src/main/flex">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <condition property="destDir" value="${basedir}" else="${basedir}/target">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <condition property="jsDir" value="${basedir}" else="${basedir}/target/javascript">
+ <not>
+ <isset property="maven_compat"/>
+ </not>
+ </condition>
+ <mxmlc fork="true"
+ debug="false"
+ configname="${config_arg}"
+ swf-version="${swf.version}"
+ closure-lib="${GOOG_HOME}"
+ file="${srcDir}/${example}.${file_suffix}">
<jvmarg line="${mxmlc.jvm.args}"/>
- <jvmarg line="-Dflexlib=${FLEXJS_HOME}/frameworks}"/>
- <arg value="+flexlib=${FLEXJS_HOME}/frameworks" />
- <arg value="-debug=false" />
- <arg value="${theme_arg}" />
- <arg value="-compiler.mxml.children-as-data" />
- <arg value="-compiler.binding-value-change-event=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-kind=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-type=valueChange" />
- <arg value="-compiler.binding-event-handler-interface=org.apache.flex.events.IEventDispatcher" />
- <arg value="-compiler.binding-event-handler-class=org.apache.flex.events.EventDispatcher" />
- <arg value="-compiler.binding-event-handler-event=org.apache.flex.events.Event" />
- <arg value="+playerglobal.version=${playerglobal.version}" />
- <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
- <arg value="-external-library-path=${FLEXJS_HOME}/js/libs/js.swc" />
- <arg value="${extlib_arg}" />
- <arg value="-remove-circulars" />
- <arg value="-define=COMPILE::SWF,false" />
+ <arg line="${optional_arg}" />
+ <arg value="${theme_arg}" />
+ <arg value="${extlib_arg}" />
+ <arg value="-define=COMPILE::SWF,false" />
<arg value="-define=COMPILE::JS,true" />
- <arg value="-js-output-type=FLEXJS" />
- <arg value="-closure-lib=${GOOG_HOME}" />
- <arg value="-sdk-js-lib=${FLEXJS_HOME}/frameworks/js/FlexJS/libs" />
- <arg value="${basedir}/src/${example}.mxml" />
- </java>
- <fail>
- <condition>
- <not>
- <or>
- <equals arg1="${errorCode}" arg2="0" />
- <equals arg1="${errorCode}" arg2="2" />
- </or>
- </not>
- </condition>
- </fail>
- </target>
-
- <target name="compilejsair" description="Cross-compiles ${example}" unless="no.js">
- <echo message="Compiling ${example}.js"/>
- <echo message="FLEX_HOME: ${FLEX_HOME}"/>
- <echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
- <echo message="GOOG_HOME: ${GOOG_HOME}"/>
- <property name="theme_arg" value="-define=CONFIG::theme,false" />
- <property name="extlib_arg" value="-define=CONFIG::extlib,false" />
-
- <java jar="${FALCONJX_HOME}/lib/mxmlc.jar" resultProperty="errorCode"
- fork="true">
- <jvmarg line="${mxmlc.jvm.args}"/>
- <jvmarg line="-Dflexlib=${FLEXJS_HOME}/frameworks}"/>
- <arg value="+flexlib=${FLEXJS_HOME}/frameworks" />
- <arg value="+configname=air" />
- <arg value="-debug" />
- <arg value="${theme_arg}" />
- <arg value="-compiler.mxml.children-as-data" />
- <arg value="-compiler.binding-value-change-event=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-kind=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-type=valueChange" />
- <arg value="-compiler.binding-event-handler-interface=org.apache.flex.events.IEventDispatcher" />
- <arg value="-compiler.binding-event-handler-class=org.apache.flex.events.EventDispatcher" />
- <arg value="-compiler.binding-event-handler-event=org.apache.flex.events.Event" />
+ <arg value="-targets=${js.release.target}" />
<arg value="+playerglobal.version=${playerglobal.version}" />
- <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
- <arg value="-external-library-path=${FLEXJS_HOME}/js/libs/js.swc" />
- <arg value="${extlib_arg}" />
- <arg value="-remove-circulars" />
- <arg value="-define=COMPILE::SWF,false" />
- <arg value="-define=COMPILE::JS,true" />
- <arg value="-js-output-type=FLEXJS" />
- <arg value="-closure-lib=${GOOG_HOME}" />
- <arg value="-sdk-js-lib=${FLEXJS_HOME}/frameworks/js/FlexJS/libs" />
- <arg value="${basedir}/src/${example}.mxml" />
- </java>
- <fail>
- <condition>
- <not>
- <or>
- <equals arg1="${errorCode}" arg2="0" />
- <equals arg1="${errorCode}" arg2="2" />
- </or>
- </not>
- </condition>
- </fail>
+ <arg value="-js-output=${jsDir}" />
+ </mxmlc>
</target>
-
- <target name="compileasjs" description="Cross-compiles ${example}" unless="no.js">
- <echo message="Compiling ${example}.js"/>
- <echo message="FLEX_HOME: ${FLEX_HOME}"/>
- <echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
- <echo message="GOOG_HOME: ${GOOG_HOME}"/>
- <property name="theme_arg" value="-define=CONFIG::theme,false" />
- <property name="extlib_arg" value="-define=CONFIG::extlib,false" />
-
- <java jar="${FALCONJX_HOME}/lib/mxmlc.jar" resultProperty="errorCode"
- fork="true">
- <jvmarg line="${mxmlc.jvm.args}"/>
- <jvmarg line="-Dflexlib=${FLEXJS_HOME}/frameworks"/>
- <arg value="+flexlib=${FLEXJS_HOME}/frameworks" />
- <arg value="-debug" />
- <arg value="${theme_arg}" />
- <arg value="-define=CONFIG::as_only,false" />
- <arg value="-define=CONFIG::js_only,true" />
- <arg value="-compiler.mxml.children-as-data" />
- <arg value="-compiler.binding-value-change-event=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-kind=org.apache.flex.events.ValueChangeEvent" />
- <arg value="-compiler.binding-value-change-event-type=valueChange" />
- <arg value="-compiler.binding-event-handler-interface=org.apache.flex.events.IEventDispatcher" />
- <arg value="-compiler.binding-event-handler-class=org.apache.flex.events.EventDispatcher" />
- <arg value="-compiler.binding-event-handler-event=org.apache.flex.events.Event" />
- <arg value="+playerglobal.version=${playerglobal.version}" />
- <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
- <arg value="-external-library-path=${FLEXJS_HOME}/js/libs/js.swc" />
- <arg value="${extlib_arg}" />
- <arg value="-remove-circulars" />
- <arg value="-define=COMPILE::SWF,false" />
- <arg value="-define=COMPILE::JS,true" />
- <arg value="-js-output-type=FLEXJS" />
- <arg value="-closure-lib=${GOOG_HOME}" />
- <arg value="-sdk-js-lib=${FLEXJS_HOME}/frameworks/js/FlexJS/libs" />
- <arg value="${basedir}/src/${example}.as" />
- </java>
- <fail>
- <condition>
- <not>
- <or>
- <equals arg1="${errorCode}" arg2="0" />
- <equals arg1="${errorCode}" arg2="2" />
- </or>
- </not>
- </condition>
- </fail>
+
+ <target name="check-air">
+ <condition property="is.air" value="true">
+ <equals arg1="${config_arg}" arg2="air" />
+ </condition>
+ </target>
+
+ <target name="wrapper" depends="check-air" unless="is.air">
+ <property name="output" value="${basedir}/bin-debug"/>
+ <html-wrapper
+ height="100%"
+ width="100%"
+ bgcolor="#ffffff"
+ name="${example}"
+ versionmajor="11"
+ versionminor="1"
+ versionrevision="0"
+ output="${output}"/>
+ </target>
+
+ <target name="copy-app-xml" depends="check-air" if="is.air">
+ <copy toDir="${basedir}/bin-debug" file="${basedir}/${example}-app.xml" />
+ <copy toDir="${basedir}/bin-release" file="${basedir}/${example}-app.xml" />
</target>
<macrodef name="html-wrapper">
@@ -387,5 +474,86 @@
</replace>
</sequential>
</macrodef>
+
+ <target name="check-resources" >
+ <available file="${basedir}/src/main/resources"
+ type="dir"
+ property="has-resources"/>
+ </target>
+ <target name="copy-resources" depends="check-resources" if="has-resources">
+ <copy todir="${basedir}/bin-debug">
+ <fileset dir="${basedir}/src/main/resources">
+ <include name="**/*.png" />
+ <include name="**/*.jpg" />
+ <include name="**/*.json" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="copy-js-resources" depends="check-resources" if="has-resources">
+ <mkdir dir="${basedir}/bin/js-debug/assets" />
+ <copy todir="${basedir}/bin/js-debug/assets" >
+ <fileset dir="${basedir}/src/main/resources/assets">
+ <include name="**" />
+ </fileset>
+ </copy>
+ <mkdir dir="${basedir}/bin/js-release/assets" />
+ <copy todir="${basedir}/bin/js-release/assets" >
+ <fileset dir="${basedir}/src/main/resources/assets">
+ <include name="**" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="run.air">
+ <property name="profile" value="mobileDevice" />
+ <property name="screensize" value="640x960:640x960" />
+ <property name="dpi" value="240" />
+ <property name="platform" value="AND" />
+ <exec executable="${AIR_HOME}/bin/${adl}" dir="${basedir}/bin-${which}" failonerror="true">
+ <arg value="-runtime" />
+ <arg value="${AIR_HOME}/runtimes/air/${runtime}" />
+ <arg value="-profile" />
+ <arg value="${profile}" />
+ <arg value="-screensize" />
+ <arg value="${screensize}" />
+ <arg value="-XscreenDPI" />
+ <arg value="${dpi}" />
+ <arg value="-XversionPlatform" />
+ <arg value="${platform}" />
+ <arg value="${basedir}/bin-${which}/${example}-app.xml" />
+ </exec>
+ </target>
+
+ <target name="run.air.desktop">
+ <property name="profile" value="extendedDesktop" />
+ <property name="screensize" value="640x960:640x960" />
+ <property name="dpi" value="240" />
+ <property name="platform" value="AND" />
+ <exec executable="${AIR_HOME}/bin/${adl}" dir="${basedir}/bin-${which}" failonerror="true">
+ <arg value="-runtime" />
+ <arg value="${AIR_HOME}/runtimes/air/${runtime}" />
+ <arg value="-profile" />
+ <arg value="${profile}" />
+ <arg value="${basedir}/bin-${which}/${example}-app.xml" />
+ </exec>
+ </target>
+
+ <target name="compile.cordova" description="Executes the Cordova build script to run the app on a device." if="has.cordova">
+ <property name="mobile.platform" value="android" />
+ <ant antfile="${FLEXJS_HOME}/cordova-build.xml" target="main" >
+ <property name="projectdir" value="${basedir}" />
+ </ant>
+ <ant antfile="${FLEXJS_HOME}/cordova-build.xml" target="load-platform.${mobile.platform}" >
+ <property name="projectdir" value="${basedir}" />
+ </ant>
+ </target>
+
+ <target name="run.cordova" description="Executes the Cordova build script to run the app on a device." if="has.cordova">
+ <property name="mobile.platform" value="android" />
+ <ant antfile="${FLEXJS_HOME}/cordova-build.xml" target="run.${mobile.platform}" >
+ <property name="projectdir" value="${basedir}" />
+ </ant>
+ </target>
</project>
[17/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs
into develop
Posted by pe...@apache.org.
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs into develop
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/932f7cb4
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/932f7cb4
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/932f7cb4
Branch: refs/heads/feature/dragAndDrop
Commit: 932f7cb4de15b4ff45d8dd71d76bd08110242f19
Parents: f51fcad d52d531
Author: greg-dove <gr...@gmail.com>
Authored: Tue Aug 22 11:35:04 2017 +1200
Committer: greg-dove <gr...@gmail.com>
Committed: Tue Aug 22 11:35:04 2017 +1200
----------------------------------------------------------------------
.../src/main/flex/org/apache/flex/mdl/Dialog.as | 9 ++++---
.../src/main/flex/org/apache/flex/mdl/Table.as | 26 ++++++++------------
2 files changed, 15 insertions(+), 20 deletions(-)
----------------------------------------------------------------------
[14/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
-refactored ant builds of manual tests to be closer to examples,
and support for 'maven_compat' from test level ant scripts. -renamed
GenericTests to UnitTests and fixed some display issu
Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/core/BinaryDataTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/core/BinaryDataTesterTest.as b/manualtests/GenericTests/src/flexUnitTests/core/BinaryDataTesterTest.as
deleted file mode 100644
index b10d18c..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/core/BinaryDataTesterTest.as
+++ /dev/null
@@ -1,567 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.core
-{
-
-
- import org.apache.flex.utils.Endian;
- import flexunit.framework.Assert;
- import org.apache.flex.utils.BinaryData
-
-
- public class BinaryDataTesterTest
- {
-
- [Before]
- public function setUp():void {
- }
-
- [After]
- public function tearDown():void {
- }
-
- [BeforeClass]
- public static function setUpBeforeClass():void {
- }
-
- [AfterClass]
- public static function tearDownAfterClass():void {
- }
-
-
- //util check functions
- private static function bytesMatchExpectedData(bd:BinaryData,expected:Array,offset:int=0):Boolean{
- var len:uint = expected.length;
- var end:uint=offset+len;
- for (var i:int=offset;i<end;i++) {
- var check:uint = bd.readByteAt(i);
- if (expected[i-offset]!=check) {
- // trace('failed at ',i,expected[i-offset],check);
- return false;
- }
- }
- return true;
- }
-
- private static function reversedBytesMatch(bd1:BinaryData,bd2:BinaryData,len:uint,offset:int=0):Boolean{
- var end:uint=offset+len;
- for (var i:int=offset;i<end;i++) {
- if (bd1.readByteAt(i) != bd2.readByteAt(end-1-i)) return false;
- }
- return true;
-
- }
-
-
- [Test]
- public function testBasicPositionAndLength():void
- {
- var ba:BinaryData = new BinaryData();
-
- Assert.assertEquals("new Instance, position", 0, ba.position);
- Assert.assertEquals("new Instance, length", 0, ba.length);
-
- ba.position=100;
- Assert.assertEquals("position change, position", 100, ba.position);
- Assert.assertEquals("position change, length", 0, ba.length);
- Assert.assertEquals("position change, length", 0, ba.bytesAvailable);
-
- ba.length=100;
- Assert.assertEquals("length change, position", 100, ba.position);
- Assert.assertEquals("length change, length", 100, ba.length);
-
- ba.length=50;
- Assert.assertEquals("length change, position", 50, ba.position);
- Assert.assertEquals("length change, length", 50, ba.length);
-
-
- }
-
- [Test]
- public function testAdvancedPositionAndLength():void
- {
- var ba:BinaryData = new BinaryData();
-
- ba.position=100;
- ba.length=100;
-
- ba.writeByteAt(49,255);
- Assert.assertEquals("writeByteAt does not affect position",100, ba.position);
- Assert.assertEquals("writeByteAt (internal) does not affect length",100, ba.length);
-
- ba.readByteAt(48);
- Assert.assertEquals("readByteAt does not affect position",100, ba.position);
- Assert.assertEquals("readByteAt does not affect length",100, ba.length);
-
- ba.writeByteAt(199,255);
- Assert.assertEquals("writeByteAt (beyond length) does affect length",200, ba.length);
- Assert.assertEquals("writeByteAt (beyond length) does not affect position",100, ba.position);
-
- Assert.assertStrictlyEquals("out of range byte read request",0 ,ba.readByteAt(205));
-
- }
-
-
- [Test]
- public function testUTFWritePosition():void
- {
- var ba:BinaryData = new BinaryData();
- ba.writeUTF('This is a test');
- //writeUTF
- Assert.assertEquals("basic post-writeUTF position", 16, ba.position);
- ba=new BinaryData();
- ba.writeUTFBytes('This is a test');
- //writeUTFBytes
- Assert.assertEquals("basic post-writeUTFBytes position", 14, ba.position);
-
- //overlapping
- ba.position=5;
- ba.writeUTFBytes('This is a test');
- Assert.assertEquals("Advanced post-writeUTFBytes position (overlap)", 19, ba.position);
-
- }
-
- [Test]
- public function testBooleanRoundTripping():void
- {
- var ba:BinaryData = new BinaryData();
- ba.writeBoolean(true);
- ba.writeBoolean(false);
- ba.position = 0;
- Assert.assertTrue(ba.readBoolean());
- Assert.assertFalse(ba.readBoolean());
- }
-
- [Test]
- public function testByteRoundTripping():void
- {
- var ba:BinaryData = new BinaryData();
- ba.writeByte(255);
- ba.writeByte(256);
- ba.writeByte(-256);
- ba.writeByte(-257);
- ba.writeByte(-128);
- ba.writeByte(128);
- ba.writeByte(127);
- ba.writeByte(-50);
- ba.writeByte(50);
- ba.position = 0;
-
-
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -1, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 0, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 0, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -1, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -128, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -128, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 127, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", -50, ba.readByte());
- Assert.assertEquals("Error testing post writeByte/readByte round-tripping", 50, ba.readByte());
- }
-
-
- [Test]
- public function testUnsignedByteRoundTripping():void
- {
- var ba:BinaryData = new BinaryData();
- ba.writeByte(255);
- ba.writeByte(256);
- ba.writeByte(-256);
- ba.writeByte(-257);
- ba.writeByte(-128);
- ba.writeByte(128);
- ba.writeByte(127);
- ba.writeByte(-50);
- ba.writeByte(50);
- ba.position = 0;
- //check read values
-
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 255, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 0, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 0, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 255, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 128, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 128, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 127, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 206, ba.readUnsignedByte());
- Assert.assertEquals("Error testing post writeByte/readUnsignedByte round-tripping", 50, ba.readUnsignedByte());
- }
-
-
- [Test]
- public function testBasicEndian():void
- {
-
- var systemEndian:String = Endian.systemEndian;
- //check we have a decisive systemEndian detection
- Assert.assertNotNull(systemEndian );
-
-
- var ba:BinaryData = new BinaryData();
- var defaultEndian:String = ba.endian;
-
- var alternateEndian:String = (defaultEndian == Endian.BIG_ENDIAN) ? Endian.LITTLE_ENDIAN : Endian.BIG_ENDIAN;
- var expected:Object ={};
- expected[Endian.BIG_ENDIAN] = 218038271;
- expected[Endian.LITTLE_ENDIAN] = 4294966796;
- var bytes:Array = [12, 254, 255, 255];
- for each(var byte:uint in bytes) ba.writeByte(byte);
- ba.position = 0;
-
- Assert.assertEquals("testing endian:"+defaultEndian, expected[defaultEndian] , ba.readUnsignedInt());
-
- ba.position = 0;
- ba.endian = alternateEndian;
- var result:uint = ba.readUnsignedInt();
-
- Assert.assertEquals("testing endian:"+alternateEndian, expected[alternateEndian], result);
-
- ba.position = 0;
- ba.endian = defaultEndian;
- Assert.assertEquals("testing endian:"+defaultEndian, int(expected[defaultEndian]), ba.readInt());
-
- ba.position = 0;
- ba.endian = alternateEndian;
- Assert.assertEquals("testing endian:"+alternateEndian, int(expected[alternateEndian]), ba.readInt());
-
- var leBA:BinaryData = new BinaryData();
- leBA.endian = Endian.LITTLE_ENDIAN;
- var beBA:BinaryData = new BinaryData();
- beBA.endian = Endian.BIG_ENDIAN;
- //int writing
- beBA.writeInt(-500);
- leBA.writeInt(-500);
- //check they represent reversed byte sequence
- Assert.assertTrue(reversedBytesMatch(beBA,leBA,4));
- beBA.position=0;
- leBA.position=0;
- //check they each read back to the same uint value
- Assert.assertEquals('big endian',4294966796,beBA.readUnsignedInt());
- Assert.assertEquals('little endian',4294966796,leBA.readUnsignedInt());
-
- beBA.position=0;
- leBA.position=0;
- //uint writing
- beBA.writeUnsignedInt(4294966796);
- leBA.writeUnsignedInt(4294966796);
- //check they represent reversed byte sequence
- Assert.assertTrue(reversedBytesMatch(beBA,leBA,4));
- beBA.position=0;
- leBA.position=0;
- //check they each read back to the same uint value
- Assert.assertEquals('big endian',4294966796,beBA.readUnsignedInt());
- Assert.assertEquals('little endian',4294966796,leBA.readUnsignedInt());
-
-
- beBA.position=0;
- leBA.position=0;
-
- //check they each read back to the same int value
- Assert.assertEquals('big endian',-500,beBA.readInt());
- Assert.assertEquals('little endian',-500,leBA.readInt());
-
-
- beBA.position=0;
- leBA.position=0;
-
- //short writing
- beBA.writeShort(-500);
- leBA.writeShort(-500);
- //check they represent reversed byte sequence
- Assert.assertTrue(reversedBytesMatch(beBA,leBA,2));
- beBA.position=0;
- leBA.position=0;
- //check they each read back to the same uint value
- Assert.assertEquals('big endian',65036,beBA.readUnsignedShort());
- Assert.assertEquals('little endian',65036,leBA.readUnsignedShort());
-
-
- beBA.position=0;
- leBA.position=0;
-
- //check they each read back to the same int value
- Assert.assertEquals('big endian',-500,beBA.readShort());
- Assert.assertEquals('little endian',-500,leBA.readShort());
-
- }
-
-
- [Test]
- public function testUTFRoundtripping():void
- {
-
- //test big-endian round-tripping
- var ba:BinaryData = new BinaryData();
- ba.endian = Endian.BIG_ENDIAN;
- ba.writeUTF('This is a test');
- //writeUTF
- Assert.assertEquals("basic post-writeUTF position", 16, ba.position);
- ba.position = 0;
- Assert.assertEquals("utf big endian round-tripping", 'This is a test', ba.readUTF());
-
- ba = new BinaryData();
- //test little-endian round-tripping
- ba.endian = Endian.LITTLE_ENDIAN;
- ba.writeUTF('This is a test');
- //writeUTF
- Assert.assertEquals("basic post-writeUTF position", 16, ba.position);
- ba.position = 0;
- Assert.assertEquals("utf big endian round-tripping", 'This is a test', ba.readUTF());
-
- }
-
-
- [Test]
- public function testShortRoundTripping():void
- {
- var ba:BinaryData = new BinaryData();
- //test LITTLE_ENDIAN round-tripping
- ba.endian = Endian.LITTLE_ENDIAN;
- ba.writeShort(255);
- ba.writeShort(-50);
- ba.writeShort(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 6, ba.length);
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 255, ba.readShort());
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", -50, ba.readShort());
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 50, ba.readShort());
-
- //test BIG_ENDIAN round-tripping
-
- ba.position = 0;
- ba.endian = Endian.BIG_ENDIAN ;
- ba.writeShort(255);
- ba.writeShort(-50);
- ba.writeShort(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 6, ba.length);
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 255, ba.readShort());
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", -50, ba.readShort());
- Assert.assertEquals("Error testing post writeShort/readShort round-tripping", 50, ba.readShort());
- }
-
-
- [Test]
- public function testUnsignedShortRoundTripping():void
- {
- var ba:BinaryData = new BinaryData();
- //test LITTLE_ENDIAN round-tripping
- ba.endian = Endian.LITTLE_ENDIAN;
- ba.writeShort(255);
- ba.writeShort(-50);
- ba.writeShort(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 6, ba.length);
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 255, ba.readUnsignedShort());
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 65486, ba.readUnsignedShort());
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 50, ba.readUnsignedShort());
-
- //test BIG_ENDIAN round-tripping
-
- ba.position = 0;
- ba.endian = Endian.BIG_ENDIAN ;
- ba.writeShort(255);
- ba.writeShort(-50);
- ba.writeShort(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 6, ba.length);
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 255, ba.readUnsignedShort());
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 65486, ba.readUnsignedShort());
- Assert.assertEquals("Error testing post unsigned writeShort/readShort round-tripping", 50, ba.readUnsignedShort());
- }
-
- [Test]
- public function testIntRoundTripping():void
- {
- var ba:BinaryData = new BinaryData();
- //test LITTLE_ENDIAN round-tripping
- ba.endian = Endian.LITTLE_ENDIAN;
- ba.writeInt(65536);
- ba.writeInt(-50);
- ba.writeInt(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 65536, ba.readInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", -50, ba.readInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readInt());
-
- //test BIG_ENDIAN round-tripping
-
- ba.position = 0;
- ba.endian = Endian.BIG_ENDIAN ;
- ba.writeInt(65536);
- ba.writeInt(-50);
- ba.writeInt(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 65536, ba.readInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", -50, ba.readInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readInt());
- }
-
-
- [Test]
- public function testUnsignedIntRoundTripping():void
- {
- var ba:BinaryData = new BinaryData();
- //test LITTLE_ENDIAN round-tripping
- ba.endian = Endian.LITTLE_ENDIAN;
- ba.writeUnsignedInt(65536);
- ba.writeUnsignedInt(-50);
- ba.writeUnsignedInt(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping",65536, ba.readUnsignedInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 4294967246, ba.readUnsignedInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readUnsignedInt());
-
- //test BIG_ENDIAN round-tripping
-
- ba.position = 0;
- ba.endian = Endian.BIG_ENDIAN ;
- ba.writeUnsignedInt(65536);
- ba.writeUnsignedInt(-50);
- ba.writeUnsignedInt(50);
- ba.position = 0;
-
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 12, ba.length);
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping",65536, ba.readUnsignedInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 4294967246, ba.readUnsignedInt());
- Assert.assertEquals("Error testing post writeInt/readInt round-tripping", 50, ba.readUnsignedInt());
- }
-
- [Test]
- public function testFloatRoundTripping():void
- {
- var ble:BinaryData = new BinaryData();
- //test LITTLE_ENDIAN round-tripping
- ble.endian = Endian.LITTLE_ENDIAN;
- ble.writeFloat(86.54);
-
-
- Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, ble.length);
- Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, ble.position);
- //check bytes to account for precision loss between double and float comparisons
- Assert.assertTrue("Error testing post writeFloat/readFloat round-tripping", bytesMatchExpectedData(ble,[123,20,173,66]));
-
- var bbe:BinaryData = new BinaryData();
- //test BIG_ENDIAN round-tripping
- bbe.endian = Endian.BIG_ENDIAN;
- bbe.writeFloat(86.54);
-
-
- Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, bbe.length);
- Assert.assertEquals("Error testing post writeFloat/readFloat round-tripping", 4, bbe.position);
- //check bytes to account for precision loss between double and float comparisons
- Assert.assertTrue("Error testing post writeFloat/readFloat round-tripping", bytesMatchExpectedData(bbe,[66,173,20,123]));
-
-
- }
-
-
- [Test]
- public function testDoubleRoundTripping():void
- {
-
- var ble:BinaryData = new BinaryData();
- //test LITTLE_ENDIAN round-tripping
- ble.endian = Endian.LITTLE_ENDIAN;
- ble.writeDouble(86.54);
-
-
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, ble.length);
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, ble.position);
-
- //check bytes
- Assert.assertTrue("Error testing post writeDouble/readDouble round-tripping", bytesMatchExpectedData(ble,[195,245,40,92,143,162,85,64]));
-
- var bbe:BinaryData = new BinaryData();
- //test BIG_ENDIAN round-tripping
- bbe.endian = Endian.BIG_ENDIAN;
- bbe.writeDouble(86.54);
-
-
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, bbe.length);
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, bbe.position);
- //check bytes
-
- Assert.assertTrue("Error testing post writeDouble/readDouble round-tripping", bytesMatchExpectedData(bbe,[64,85,162,143,92,40,245,195]));
-
-
- ble.position = 0;
- bbe.position = 0;
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 86.54, bbe.readDouble());
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 86.54, ble.readDouble());
-
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, bbe.position);
- Assert.assertEquals("Error testing post writeDouble/readDouble round-tripping", 8, ble.position);
-
- }
-
-
-
- [Test]
- public function testWriteBytes():void
- {
- var ba:BinaryData = new BinaryData();
- for (var i:int=0;i<50;i++) ba.writeByte(i);
-
-
- var newBa:BinaryData = new BinaryData();
- newBa.writeBytes(ba);
-
- Assert.assertEquals("BinaryData writeBytes: length", 50, newBa.length);
- Assert.assertEquals("BinaryData writeBytes: position", 50, newBa.position);
-
- for (i=0;i<50;i++) {
- Assert.assertEquals("BinaryData writeBytes: content check", i, newBa.array[i]);
- }
-
-
-
- }
-
- [Test]
- public function testReadBytes():void
- {
- var ba:BinaryData = new BinaryData();
- for (var i:int=0;i<50;i++) ba.writeByte(i);
- ba.position=0;
- var newBa:BinaryData = new BinaryData();
-
- ba.readBytes(newBa,5,10);
- Assert.assertEquals("BinaryData readBytes: position", 10, ba.position);
- Assert.assertEquals("BinaryData readBytes: length", 15, newBa.length);
- Assert.assertEquals("BinaryData readBytes: position", 0, newBa.position);
- var expected:Array = [0,0,0,0,0,0,1,2,3,4,5,6,7,8,9];
- for (i=5;i<15;i++) {
- Assert.assertEquals("BinaryData readBytes: content check", expected[i], newBa.array[i]);
- }
- }
-
-
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/core/StrandTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/core/StrandTesterTest.as b/manualtests/GenericTests/src/flexUnitTests/core/StrandTesterTest.as
deleted file mode 100644
index f6715bb..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/core/StrandTesterTest.as
+++ /dev/null
@@ -1,55 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.core
-{
- import flexunit.framework.Assert;
-
- import org.apache.flex.core.Strand;
-
- public class StrandTesterTest
- {
- [Before]
- public function setUp():void
- {
- }
-
- [After]
- public function tearDown():void
- {
- }
-
- [BeforeClass]
- public static function setUpBeforeClass():void
- {
- }
-
- [AfterClass]
- public static function tearDownAfterClass():void
- {
- }
-
- [Test]
- public function testIdProperty():void
- {
- var strand:Strand = new Strand();
- strand.id = "foo";
- Assert.assertEquals("Error testing Srand.id", "foo",strand.id);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/jira/JiraTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/jira/JiraTesterTest.as b/manualtests/GenericTests/src/flexUnitTests/jira/JiraTesterTest.as
deleted file mode 100644
index c361f39..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/jira/JiraTesterTest.as
+++ /dev/null
@@ -1,73 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.jira
-{
- import flexunit.framework.Assert;
-
-
- public class JiraTesterTest
- {
- public static var isJS:Boolean;
- [BeforeClass]
- public static function setUpBeforeClass():void
- {
- var js:Boolean = false;
- try {
- var check:* = getDefinitionByName("flash.system.Capabilities");
- } catch (e:Error) {
- js = true;
- }
- //if this next reference to 'check' is not included, then the above try/catch code
- // appears to be optimized away in js-release mode
- //todo: this is inconsistent with swf, need to create simple test case for jx compiler/gcc
- if (check == null) {
- js = true;
- }
- isJS = js;
- }
-
- [AfterClass]
- public static function tearDownAfterClass():void
- {
- }
-
-
- [Before]
- public function setUp():void
- {
- }
-
- [After]
- public function tearDown():void
- {
- }
-
-
- /*
- // TEST METHODS
- */
-
- //example, postfix the test method with JIRA issue reference:
- /*[Test]
- public function testJIRA_FLEX_9999():void
- {
-
- }*/
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/observedbugs/ObservedBugTests.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/observedbugs/ObservedBugTests.as b/manualtests/GenericTests/src/flexUnitTests/observedbugs/ObservedBugTests.as
deleted file mode 100644
index 8f3006a..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/observedbugs/ObservedBugTests.as
+++ /dev/null
@@ -1,101 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.observedbugs
-{
- import flexunit.framework.Assert;
- import org.apache.flex.reflection.*;
-
- public class ObservedBugTests
- {
-
- public static var isJS:Boolean;
- [BeforeClass]
- public static function setUpBeforeClass():void
- {
- var js:Boolean = false;
- try {
- var check:* = getDefinitionByName("flash.system.Capabilities");
- } catch (e:Error) {
- js = true;
- }
- //if this next reference to 'check' is not included, then the above try/catch code
- // appears to be optimized away in js-release mode
- //todo: this is inconsistent with swf, need to create simple test case for jx compiler/gcc
- if (check == null) {
- js = true;
- }
- isJS = js;
- }
-
- [AfterClass]
- public static function tearDownAfterClass():void
- {
- }
-
- [Before]
- public function setUp():void
- {
- }
-
- [After]
- public function tearDown():void
- {
- }
-
-
- [Test]
- public function testTryCatchJSReleaseModeWorks_a():void
- {
- var js:int = 1;
- try {
- js = getDefinitionByName("flash.system.Capabilities") != null ? 1 : 0;
- } catch (e:Error) {
- js = 2;
- }
-
- Assert.assertTrue("Unexpected value following try/catch",(isJS ? (js == 2) : (js == 1)));
-
- }
-
-
- [TestVariance(variance="JS",description="Variance in test, this test fails in JS-Release mode only")]
- [Test]
- public function testTryCatchJSReleaseModeFails_b():void
- {
- var js:Boolean = false;
- try {
- var check:* = getDefinitionByName("flash.system.Capabilities");
- } catch (e:Error) {
- js = true;
- }
-
- //if this next reference to 'check' variable is not included, then the above try/catch code
- // appears to be optimized away in js-release mode
- //todo: this is inconsistent with swf
- /* if (check == null) {
- js = true;
- }*/
- Assert.assertTrue("Unexpected value following try/catch",(isJS ? (js == true) : (js == false)));
-
-
- }
-
-
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTest.as b/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTest.as
deleted file mode 100644
index 9d39fc9..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTest.as
+++ /dev/null
@@ -1,373 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection
-{
- import flexunit.framework.Assert;
- import flexUnitTests.reflection.support.*;
- import org.apache.flex.reflection.*;
-
- public class ReflectionTesterTest
- {
-
- public static var isJS:Boolean;
- [BeforeClass]
- public static function setUpBeforeClass():void
- {
- var js:Boolean = false;
- try {
- var check:* = getDefinitionByName("flash.system.Capabilities");
- } catch (e:Error) {
- js = true;
- }
- //if this next reference to 'check' is not included, then the above try/catch code
- //appears to be optimized away in js-release mode
- //a separate test has been created for this
- if (check == null) {
- js = true;
- }
- isJS = js;
- }
-
- [AfterClass]
- public static function tearDownAfterClass():void
- {
- }
-
- [Before]
- public function setUp():void
- {
- TestClass2.testStaticVar = "testStaticVar_val";
- TestClass2.testStaticWriteOnly = "staticAccessor_initial_value";
- }
-
- [After]
- public function tearDown():void
- {
- }
-
- private static function retrieveItemWithName(collection:Array, name:String):DefinitionBase {
- var ret:DefinitionBase;
- var i:uint=0,l:uint=collection.length;
- for (;i<l;i++) {
- if (collection[i].name==name) {
- ret = collection[i];
- break;
- }
- }
-
- return ret;
- }
-
-
- [Test]
- public function testBasicDescribeTypeClass():void
- {
- var def:TypeDefinition = describeType(TestClass2);
-
- Assert.assertEquals("Unexpected package name",def.packageName,"flexUnitTests.reflection.support");
- Assert.assertEquals("Unexpected type name",def.name,"TestClass2");
-
- var variables:Array = def.variables;
- Assert.assertEquals("unexpected variables length",1,variables.length);
-
-
- var methods:Array = def.methods;
- Assert.assertEquals("unexpected methods length",2,methods.length);
-
- var accessors:Array = def.accessors;
- Assert.assertEquals("unexpected accessors length",3,accessors.length);
-
- var constructor:MethodDefinition = def.constructorMethod;
- Assert.assertEquals("unexpected constructor declaredBy",
- "flexUnitTests.reflection.support.TestClass2",
- constructor.declaredBy.qualifiedName);
-
- Assert.assertEquals("unexpected constructor params",
- 1,
- constructor.parameters.length);
-
- var meta:Array = def.retrieveMetaDataByName("TestMeta");
- Assert.assertEquals("unexpected class specific meta length",
- 1,
- meta.length);
-
-
- def = describeType(TestClass4);
- Assert.assertEquals("Unexpected package name",def.packageName,"flexUnitTests.reflection.support");
- Assert.assertEquals("Unexpected type name",def.name,"TestClass4");
-
- variables = def.variables;
- Assert.assertEquals("unexpected variables length",2,variables.length);
-
-
- methods = def.methods;
- Assert.assertEquals("unexpected methods length",4,methods.length);
-
- accessors = def.accessors;
- Assert.assertEquals("unexpected accessors length",6,accessors.length);
-
- constructor = def.constructorMethod;
- Assert.assertEquals("unexpected constructor declaredBy",
- "flexUnitTests.reflection.support.TestClass4",
- constructor.declaredBy.qualifiedName);
-
- Assert.assertEquals("unexpected constructor params",
- 0,
- constructor.parameters.length);
-
-
-
- }
-
-
-
-
- [TestVariance(variance="JS",description="Variance in test due to current inability for js target to reflect into non-FlexJS base classes or typedefs")]
- [Test]
- public function testDescribeTypeClass():void
- {
- var def:TypeDefinition = describeType(TestClass1);
- var expected:*;
- Assert.assertEquals("Unexpected package name","flexUnitTests.reflection.support",def.packageName);
- Assert.assertEquals("Unexpected type name",def.name,"TestClass1");
-
- var variables:Array = def.variables;
- Assert.assertEquals("unexpected instance variables length",3,variables.length);
-
- //there is a difference based on the EventDispatcher inheritance chain differences between js and swf:
- expected = isJS ? 4 : 7;
- var methods:Array = def.methods;
- Assert.assertEquals("unexpected instance methods length",expected,methods.length);
-
- var accessors:Array = def.accessors;
- Assert.assertEquals("unexpected instance accessors length",4,accessors.length);
-
- var staticVariables:Array =def.staticVariables;
- Assert.assertEquals("unexpected static variables length",2,staticVariables.length);
-
- var staticMethods:Array = def.staticMethods;
- Assert.assertEquals("unexpected static methods length",1,staticMethods.length);
- //there is a difference based on the native inheritance of readonly 'prototype' not collected from 'Class' (or Object for js):
- expected = isJS ? 3 : 4;
- var staticAccessors:Array = def.staticAccessors;
- Assert.assertEquals("unexpected static accessors length",expected,staticAccessors.length);
-
-
- }
-
- [TestVariance(variance="JS",description="Variance in test due to current inability for js target to reflect into non-FlexJS base classes or typedefs")]
- [Test]
- public function testDescribeTypeInstance():void
- {
- var def:TypeDefinition = describeType(new TestClass1());
- var expected:*;
- Assert.assertEquals("Unexpected package name","flexUnitTests.reflection.support",def.packageName);
- Assert.assertEquals("Unexpected type name",def.name,"TestClass1");
-
- var variables:Array = def.variables;
- Assert.assertEquals("unexpected instance variables length",3,variables.length);
-
- //there is a difference based on the EventDispatcher inheritance chain differences between js and swf:
- expected = isJS ? 4 : 7;
- var methods:Array = def.methods;
- Assert.assertEquals("unexpected instance methods length",expected,methods.length);
-
- var accessors:Array = def.accessors;
- Assert.assertEquals("unexpected instance accessors length",4,accessors.length);
-
- var staticVariables:Array =def.staticVariables;
- Assert.assertEquals("unexpected static variables length",2,staticVariables.length);
-
- var staticMethods:Array = def.staticMethods;
- Assert.assertEquals("unexpected static methods length",1,staticMethods.length);
- //there is a difference based on the native inheritance of readonly 'prototype' not collected from 'Class' (or Object for js):
- expected = isJS ? 3 : 4;
- var staticAccessors:Array = def.staticAccessors;
- Assert.assertEquals("unexpected static accessors length",expected,staticAccessors.length);
-
-
- }
-
- [TestVariance(variance="JS",description="Variance in baseClasses due to current inability for js target to reflect into non-FlexJS base classes or typedefs")]
- [Test]
- public function testBaseClasses():void{
- var def:TypeDefinition = describeType(TestClass1);
-
- var baseClasses:Array = def.baseClasses;
- var expected:uint = isJS ? 1 : 3;
- Assert.assertEquals("unexpected baseclasses length",expected,baseClasses.length);
- }
-
-
- [Test]
- public function testMemberAccess():void{
- //all of these should succeed without error
- var inst:TestClass2 = new TestClass2("");
- var def:TypeDefinition = describeType(inst);
-
- /** instance variables **/
-
- var variables:Array = def.variables;
- var variable:VariableDefinition = variables[0];
- Assert.assertEquals("unexpected variable name","testVar",variable.name);
- var meta:MetaDataDefinition = variable.retrieveMetaDataByName("TestMeta")[0];
- Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
-
- var metaArg:MetaDataArgDefinition = meta.getArgsByKey("foo")[0];
- Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
- Assert.assertEquals("unexpected meta arg value","instanceVariable",metaArg.value);
-
- Assert.assertEquals("unexpected reflection initial variable value","testVar_val",inst[variable.name]);
-
- var accessors:Array = def.accessors;
- var testReadOnly:AccessorDefinition = retrieveItemWithName(accessors,"testReadOnly") as AccessorDefinition;
- meta = testReadOnly.retrieveMetaDataByName("TestMeta")[0];
- Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
-
- metaArg = meta.getArgsByKey("foo")[0];
- Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
- Assert.assertEquals("unexpected meta arg value","instanceAccessor",metaArg.value);
-
- /** instance accessors **/
- var testWriteOnly:AccessorDefinition = retrieveItemWithName(accessors,"testWriteOnly") as AccessorDefinition;
- var testReadWrite:AccessorDefinition = retrieveItemWithName(accessors,"testReadWrite") as AccessorDefinition;
- Assert.assertNotNull(testReadOnly);
- Assert.assertNotNull(testWriteOnly);
- Assert.assertNotNull(testReadWrite);
-
- Assert.assertEquals("unexpected accessor initial value","instanceAccessor_initial_value",inst[testReadOnly.name]);
- Assert.assertEquals("unexpected accessor initial value","instanceAccessor_initial_value",inst[testReadWrite.name]);
-
- inst[testWriteOnly.name] = "test";
- Assert.assertEquals("unexpected accessor initial value","test",inst[testReadOnly.name]);
- Assert.assertEquals("unexpected accessor initial value","test",inst[testReadWrite.name]);
-
- inst[testReadWrite.name] = "test2";
- Assert.assertEquals("unexpected accessor initial value","test2",inst[testReadOnly.name]);
- Assert.assertEquals("unexpected accessor initial value","test2",inst[testReadWrite.name]);
-
- /** instance methods **/
- var methods:Array = def.methods;
- var testMethod:MethodDefinition = retrieveItemWithName(methods,"testMethod") as MethodDefinition;
- meta = testMethod.retrieveMetaDataByName("TestMeta")[0];
- Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
-
- metaArg = meta.getArgsByKey("foo")[0];
- Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
- Assert.assertEquals("unexpected meta arg value","instanceMethod",metaArg.value);
- Assert.assertEquals("unexpected parameter count",0,testMethod.parameters.length);
- inst[testMethod.name]();
- Assert.assertEquals("unexpected method invocation result","testMethod was called",inst[testReadWrite.name]);
-
- var testMethodWithArgs:MethodDefinition = retrieveItemWithName(methods,"testMethodWithArgs") as MethodDefinition;
- Assert.assertEquals("unexpected parameter count",2,testMethodWithArgs.parameters.length);
- Assert.assertTrue("unexpected method invocation result",inst[testMethodWithArgs.name]("test"));
- Assert.assertFalse("unexpected method invocation result",inst[testMethodWithArgs.name]("test", false));
- Assert.assertEquals("unexpected method invocation result","testMethodWithArgs was called",inst[testReadWrite.name]);
-
-
-
- /** static vars **/
- variables = def.staticVariables;
-
-
- variable = variables[0];
- Assert.assertEquals("unexpected variable name","testStaticVar",variable.name);
- meta = variable.retrieveMetaDataByName("TestMeta")[0];
- Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
-
- metaArg = meta.getArgsByKey("foo")[0];
- Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
- Assert.assertEquals("unexpected meta arg value","staticVariable",metaArg.value);
-
- Assert.assertEquals("unexpected reflection initial variable value","testStaticVar_val",TestClass2[variable.name]);
-
- /** static accessors **/
-
- accessors = def.staticAccessors;
-
-
- testReadOnly = retrieveItemWithName(accessors,"testStaticReadOnly") as AccessorDefinition;
- meta = testReadOnly.retrieveMetaDataByName("TestMeta")[0];
- Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
-
- metaArg = meta.getArgsByKey("foo")[0];
- Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
- Assert.assertEquals("unexpected meta arg value","staticAccessor",metaArg.value);
-
-
- testWriteOnly = retrieveItemWithName(accessors,"testStaticWriteOnly") as AccessorDefinition;
- testReadWrite = retrieveItemWithName(accessors,"testStaticReadWrite") as AccessorDefinition;
- Assert.assertNotNull(testReadOnly);
- Assert.assertNotNull(testWriteOnly);
- Assert.assertNotNull(testReadWrite);
-
- Assert.assertEquals("unexpected accessor initial value","staticAccessor_initial_value",TestClass2[testReadOnly.name]);
- Assert.assertEquals("unexpected accessor initial value","staticAccessor_initial_value",TestClass2[testReadWrite.name]);
-
- TestClass2[testWriteOnly.name] = "test";
- Assert.assertEquals("unexpected accessor initial value","test",TestClass2[testReadOnly.name]);
- Assert.assertEquals("unexpected accessor initial value","test",TestClass2[testReadWrite.name]);
-
- TestClass2[testReadWrite.name] = "test2";
- Assert.assertEquals("unexpected accessor initial value","test2",TestClass2[testReadOnly.name]);
- Assert.assertEquals("unexpected accessor initial value","test2",TestClass2[testReadWrite.name]);
-
-
- /** static methods **/
- methods = def.staticMethods;
- testMethod = retrieveItemWithName(methods,"testStaticMethod") as MethodDefinition;
- meta = testMethod.retrieveMetaDataByName("TestMeta")[0];
- Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
-
- metaArg = meta.getArgsByKey("foo")[0];
- Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
- Assert.assertEquals("unexpected meta arg value","staticMethod",metaArg.value);
- Assert.assertEquals("unexpected parameter count",0,testMethod.parameters.length);
- TestClass2[testMethod.name]();
- Assert.assertEquals("unexpected method invocation result","testStaticMethod was called",TestClass2[testReadWrite.name]);
-
- testMethodWithArgs = retrieveItemWithName(methods,"testStaticMethodWithArgs") as MethodDefinition;
- Assert.assertEquals("unexpected parameter count",2,testMethodWithArgs.parameters.length);
- Assert.assertTrue("unexpected method invocation result",TestClass2[testMethodWithArgs.name]("test"));
- Assert.assertFalse("unexpected method invocation result",TestClass2[testMethodWithArgs.name]("test", false));
- Assert.assertEquals("unexpected method invocation result","testStaticMethodWithArgs was called",TestClass2[testReadWrite.name]);
-
- }
-
-
- [Test]
- public function testInterfaceReflection():void{
- var def:TypeDefinition = describeType(ITestInterface4);
- Assert.assertEquals("unexpected kind value","interface",def.kind);
- Assert.assertEquals("unexpected interfaces length",3,def.interfaces.length);
- Assert.assertEquals("unexpected accessors length",1,def.accessors.length);
- Assert.assertEquals("unexpected methods length",1,def.methods.length);
-
- Assert.assertEquals("unexpected variables length",0,def.variables.length);
- Assert.assertEquals("unexpected staticVariables length",0,def.staticVariables.length);
- Assert.assertEquals("unexpected variables length",0,def.staticMethods.length);
- Assert.assertEquals("unexpected staticVariables length",0,def.staticAccessors.length);
- Assert.assertNull("unexpected constructor Method definition",def.constructorMethod);
- }
-
-
-
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestAlias.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestAlias.as b/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestAlias.as
deleted file mode 100644
index 7fd5984..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestAlias.as
+++ /dev/null
@@ -1,90 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection
-{
- import flexunit.framework.Assert;
- import flexUnitTests.reflection.support.*;
- import org.apache.flex.reflection.*;
-
- public class ReflectionTesterTestAlias
- {
-
- public static var isJS:Boolean;
- [BeforeClass]
- public static function setUpBeforeClass():void
- {
- var js:Boolean = false;
- try {
- var check:* = getDefinitionByName("flash.system.Capabilities");
- } catch (e:Error) {
- js = true;
- }
- //if this next reference to 'check' is not included, then the above try/catch code
- //appears to be optimized away in js-release mode
- //a separate test has been created for this
- if (check == null) {
- js = true;
- }
- isJS = js;
- }
-
- [AfterClass]
- public static function tearDownAfterClass():void
- {
- }
-
- [Before]
- public function setUp():void
- {
-
- }
-
- [After]
- public function tearDown():void
- {
-
- }
-
-
-
-
- [Test]
- public function testBasicAlias():void {
- //no initial alias
- Assert.assertNull(getAliasByClass(TestClass2));
- registerClassAlias("fjsTest", TestClass2);
- //alias is registered
- Assert.assertEquals("unexpected Alias value","fjsTest",getAliasByClass(TestClass2));
- //register same alias for another class
- registerClassAlias("fjsTest", TestClass3);
- //original alias mapping is deregistered
- Assert.assertNull(getAliasByClass(TestClass2));
- //alias is registered for new class
- Assert.assertEquals("unexpected Alias value","fjsTest",getAliasByClass(TestClass3));
-
- //class is retrievable by alias
- Assert.assertEquals("unexpected Class value",TestClass3,getClassByAlias("fjsTest"));
-
-
- }
-
-
-
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestUseCache.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestUseCache.as b/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestUseCache.as
deleted file mode 100644
index 9722647..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/ReflectionTesterTestUseCache.as
+++ /dev/null
@@ -1,93 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection
-{
- import flexunit.framework.Assert;
- import flexUnitTests.reflection.support.*;
- import org.apache.flex.reflection.*;
-
- public class ReflectionTesterTestUseCache
- {
-
- public static var isJS:Boolean;
- [BeforeClass]
- public static function setUpBeforeClass():void
- {
- var js:Boolean = false;
- try {
- var check:* = getDefinitionByName("flash.system.Capabilities");
- } catch (e:Error) {
- js = true;
- }
- //if this next reference to 'check' is not included, then the above try/catch code
- //appears to be optimized away in js-release mode
- //a separate test has been created for this
- if (check == null) {
- js = true;
- }
- isJS = js;
- }
-
- [AfterClass]
- public static function tearDownAfterClass():void
- {
- }
-
- [Before]
- public function setUp():void
- {
- TypeDefinition.useCache = true;
- TestClass2.testStaticVar = "testStaticVar_val";
- TestClass2.testStaticWriteOnly = "staticAccessor_initial_value";
- }
-
- [After]
- public function tearDown():void
- {
- TypeDefinition.useCache = false;
- }
-
- private static function retrieveItemWithName(collection:Array, name:String):DefinitionBase {
- var ret:DefinitionBase;
- var i:uint=0,l:uint=collection.length;
- for (;i<l;i++) {
- if (collection[i].name==name) {
- ret = collection[i];
- break;
- }
- }
-
- return ret;
- }
-
-
- [Test]
- public function testBasicCache():void {
- var def:TypeDefinition = describeType(TestClass2);
-
- var def2:TypeDefinition = describeType(TestClass2);
-
- Assert.assertEquals("cache not working",def,def2);
-
- }
-
-
-
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface.as
deleted file mode 100644
index b5a2249..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface.as
+++ /dev/null
@@ -1,27 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
- public interface ITestInterface
- {
- function someMethod(compulsoryArg:int, optArg:String=null):TestClass1;
-
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface2.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface2.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface2.as
deleted file mode 100644
index f69f9b7..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface2.as
+++ /dev/null
@@ -1,29 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
- public interface ITestInterface2 extends ITestInterface
- {
- function someMethod2(compulsoryArg:int, optArg:String=null):TestClass1;
-
- function get someValue2():Boolean;
-
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface3.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface3.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface3.as
deleted file mode 100644
index 83d05ee..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface3.as
+++ /dev/null
@@ -1,27 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
- public interface ITestInterface3
- {
- //empty
-
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface4.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface4.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface4.as
deleted file mode 100644
index 7a032f5..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/ITestInterface4.as
+++ /dev/null
@@ -1,29 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
- public interface ITestInterface4 extends ITestInterface2, ITestInterface3
- {
- function someMethod3(compulsoryArg:int, optArg:String=null):TestClass1;
-
- function get someValue3():Boolean;
-
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass1.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass1.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass1.as
deleted file mode 100644
index 76ac834..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass1.as
+++ /dev/null
@@ -1,91 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
- import org.apache.flex.reflection.TypeDefinition;
-
- [RemoteClass(alias="TestClass1_alias")]
- public class TestClass1 implements ITestInterface
- {
- public function TestClass1()
- {
- var something:ITestInterface2;
- }
-
- [Bindable]
- [Event(name="foo", type="org.apache.flex.events.Event")]
- public var bindableVar:String;
- [Event(name="foo", type="org.apache.flex.events.Event")]
- public var temp:Boolean;
-
- public static var tempStatic:Boolean;
-
- public var typeDef:TypeDefinition;
-
- public var testVar:String="testVar_val";
-
- public static var staticTestVar:String="statictestVar_val";
-
- private var _atestval:String="accessorTest_val";
- public function get accessorTest():String{
- return _atestval;
- }
-
- public function set accessorTest(val:String):void{
- _atestval = val;
- }
-
- private static var _staticAtestval:String="staticAccessorTest_val";
- public static function get staticAccessorTest():String{
- return _staticAtestval;
- }
-
- public static function set staticAccessorTest(val:String):void{
- _staticAtestval = val;
- }
-
- [Bindable]
- public static var bindableStaticVar:String;
-
- [Bindable]
- public var bindableInstanceVar:String;
-
-
- public function someMethod(compulsoryArg:int, optArg:String=null):TestClass1{
- return null;
- }
-
- public static function someStaticMethod(compulsoryArg:int, optArg:String=null):TestClass1{
- return null;
- }
-
- public function get testAccessorType():TypeDefinition {
- return null;
- }
-
- public const instanceConstant:String="instanceConstant_val";
-
-
- public static const staticConstant:String="staticConstant_val";
-
-
-
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass2.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass2.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass2.as
deleted file mode 100644
index bcc7988..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass2.as
+++ /dev/null
@@ -1,103 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
-
- [TestMeta(foo="class")]
- public class TestClass2
- {
- //Note: do not change this test class unless you change the related tests to
- //support any changes that might appear when testing reflection into it
-
- public function TestClass2(blah:String){
-
- }
-
-
- [TestMeta(foo="instanceMethod")]
- public function testMethod():void{
- _testReadWrite = "testMethod was called";
- }
-
- [TestMeta(foo="instanceMethod")]
- public function testMethodWithArgs(mandatory:String,optional:Boolean=true):Boolean{
- _testReadWrite = "testMethodWithArgs was called";
- return optional;
- }
-
- [TestMeta(foo="instanceVariable")]
- public var testVar:String = "testVar_val";
-
- [TestMeta(foo="instanceAccessor")]
- public function get testReadOnly():String{
- return _testReadWrite
- }
-
- [TestMeta(foo="instanceAccessor")]
- public function set testWriteOnly(value:String):void{
- _testReadWrite=value;
- }
-
- [TestMeta(foo="instanceAccessor")]
- public function get testReadWrite():String{
- return _testReadWrite
- }
- public function set testReadWrite(value:String):void{
- _testReadWrite=value;
- }
-
- [TestMeta(foo="staticMethod")]
- public static function testStaticMethod():void{
- _testStaticReadWrite = "testStaticMethod was called";
- }
-
- [TestMeta(foo="staticMethod")]
- public static function testStaticMethodWithArgs(mandatory:String,optional:Boolean=true):Boolean{
- _testStaticReadWrite = "testStaticMethodWithArgs was called";
- return optional;
- }
-
- [TestMeta(foo="staticVariable")]
- public static var testStaticVar:String = "testStaticVar_val";
-
- [TestMeta(foo="staticAccessor")]
- public static function get testStaticReadOnly():String{
- return _testStaticReadWrite
- }
-
- [TestMeta(foo="staticAccessor")]
- public static function set testStaticWriteOnly(value:String):void{
- _testStaticReadWrite = value;
- }
-
- [TestMeta(foo="staticAccessor")]
- public static function get testStaticReadWrite():String{
- return _testStaticReadWrite;
- }
- public static function set testStaticReadWrite(value:String):void{
- _testStaticReadWrite = value;
- }
-
-
-
- private static var _testStaticReadWrite:String = "staticAccessor_initial_value";
- private var _testReadWrite:String = "instanceAccessor_initial_value";
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass3.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass3.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass3.as
deleted file mode 100644
index 0b4c59b..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass3.as
+++ /dev/null
@@ -1,39 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
-
-
- public class TestClass3 extends TestClass1 implements ITestInterface2, ITestInterface3
- {
-
- public var something:String;
-
-
- public function someMethod2(compulsoryArg:int, optArg:String=null):TestClass1
- {
- return null;
- }
-
- public function get someValue2():Boolean {
- return false;
- }
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass4.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass4.as b/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass4.as
deleted file mode 100644
index 5d0a28f..0000000
--- a/manualtests/GenericTests/src/flexUnitTests/reflection/support/TestClass4.as
+++ /dev/null
@@ -1,95 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package flexUnitTests.reflection.support
-{
-
-
-
- public class TestClass4 extends TestClass2
- {
- //Note: do not change this test class unless you change the related tests to
- //support any changes that might appear when testing reflection into it
-
- public function TestClass4(){
- super("");
- }
-
-
- [TestMeta(foo="instanceMethod")]
- public function testMethod2():void{
-
- }
-
- [TestMeta(foo="instanceMethod")]
- public function testMethodWithArgs2(mandatory:String,optional:Boolean=true):void{
-
- }
-
- [TestMeta(foo="instanceVariable")]
- public var testVar2:String;
-
- [TestMeta(foo="instanceAccessor")]
- public function get testReadonly2():String{
- return null
- }
-
- [TestMeta(foo="instanceAccessor")]
- public function set testWriteonly2(value:String):void{
-
- }
-
- [TestMeta(foo="instanceAccessor")]
- public function get testReadeWrite2():String{
- return null
- }
- public function set testReadeWrite2(value:String):void{
-
- }
-
- [TestMeta(foo="staticMethod")]
- public static function testStaticMethod():void{
- }
-
- [TestMeta(foo="staticMethod")]
- public static function testStaticMethodWithArgs(mandatory:String,optional:Boolean=true):void{
- }
-
- [TestMeta(foo="staticVariable")]
- public static var testStaticVar:String;
-
- [TestMeta(foo="staticAccessor")]
- public static function get testStaticReadonly():String{
- return null
- }
-
- [TestMeta(foo="staticAccessor")]
- public static function set testStaticWriteonly(value:String):void{
-
- }
-
- [TestMeta(foo="staticAccessor")]
- public static function get testStaticReadeWrite():String{
- return null
- }
- public static function set testStaticReadeWrite(value:String):void{
-
- }
-
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexunit/framework/Assert.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexunit/framework/Assert.as b/manualtests/GenericTests/src/flexunit/framework/Assert.as
deleted file mode 100644
index 171f695..0000000
--- a/manualtests/GenericTests/src/flexunit/framework/Assert.as
+++ /dev/null
@@ -1,305 +0,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.
- */
-package flexunit.framework
-{
- //import flexunit.framework.AssertionFailedError;
-
- /**
- * A set of assert methods. Messages are only displayed when an assert fails.
- */
- public class Assert
- {
- /**
- * @private
- */
- public static var _assertCount:uint = 0;
-
- /**
- * Returns the number of assertions that have been made
- */
- public static function get assertionsMade() : uint {
- return _assertCount;
- }
-
-
- /**
- * Resets the count for the number of assertions that have been made back to zero
- */
- public static function resetAssertionsFields() : void {
- _assertCount = 0;
- }
-
- /**
- * @private
- */
- public static function assertWithApply( asserter:Function, args:Array ):void {
- _assertCount++;
- asserter.apply( null, args );
- }
-
- /**
- * @private
- */
- public static function assertWith( asserter:Function, ...rest ):void {
- _assertCount++;
- asserter.apply( null, rest );
- }
-
- /**
- * Asserts that two provided values are equal.
- *
- * @param asserter The function to use for assertion.
- * @param rest
- * Must be passed at least 2 arguments of type Object to compare for equality.
- * If three arguments are passed, the first argument must be a String
- * and will be used as the error message.
- * The first of the comparison arguments represents the expected result
- * The second is the actual result to compare with the expected result.
- *
- * <code>assertEquals( String, Object, Object );</code>
- * <code>assertEquals( Object, Object );</code>
- */
- public static function assertEquals(... rest):void
- {
- _assertCount++;
- if ( rest.length == 3 )
- failNotEquals( rest[0], rest[1], rest[2] );
- else
- failNotEquals( "", rest[0], rest[1] );
- }
-
- /**
- * @private
- */
- public static function failNotEquals( message:String, expected:Object, actual:Object ):void
- {
- if ( expected != actual )
- failWithUserMessage( message, "expected:<" + expected + "> but was:<" + actual + ">" );
- }
-
- /**
- * /**
- * Asserts that the provided values are strictly equal.
- *
- * @param rest
- * Must be passed at least 2 arguments of type Object to compare for strict equality.
- * If three arguments are passed, the first argument must be a String
- * and will be used as the error message.
- * The first of the comparison arguments represents the expected result
- * The second is the actual result to compare with the expected result.
- *
- * <code>assertStrictlyEquals( String, Object, Object );</code>
- * <code>assertStrictlyEquals( Object, Object );</code>
- */
- public static function assertStrictlyEquals(... rest):void
- {
- _assertCount++;
- if ( rest.length == 3 )
- failNotStrictlyEquals( rest[0], rest[1], rest[2] );
- else
- failNotStrictlyEquals( "", rest[0], rest[1] );
- }
-
- /**
- * @private
- */
- public static function failNotStrictlyEquals( message:String, expected:Object, actual:Object ):void
- {
- if ( expected !== actual )
- failWithUserMessage( message, "expected:<" + expected + "> but was:<" + actual + ">" );
- }
-
- /**
- * Asserts that a condition is true.
- *
- * @param rest
- * Accepts an argument of type Boolean.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertTrue( String, Boolean );</code>
- * <code>assertTrue( Boolean );</code>
- */
- public static function assertTrue(... rest):void
- {
- _assertCount++;
- if ( rest.length == 2 )
- failNotTrue( rest[0], rest[1] );
- else
- failNotTrue( "", rest[0] );
- }
-
- /**
- * Asserts that a condition is not true.
- *
- * @param rest
- * Accepts an argument of type Boolean.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertTrue( String, Boolean );</code>
- * <code>assertTrue( Boolean );</code>
- */
- public static function failNotTrue( message:String, condition:Boolean ):void
- {
- if ( !condition )
- failWithUserMessage( message, "expected true but was false" );
- }
-
- /**
- * Asserts that a condition is false.
- *
- * @param rest
- * Accepts an argument of type Boolean.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertFalse( String, Boolean );</code>
- * <code>assertFalse( Boolean );</code>
- */
- public static function assertFalse(... rest):void
- {
- _assertCount++;
- if ( rest.length == 2 )
- failTrue( rest[0], rest[1] );
- else
- failTrue( "", rest[0] );
- }
-
- /**
- * Asserts that a condition is false.
- *
- * @param rest
- * Accepts an argument of type Boolean.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertTrue( String, Boolean );</code>
- * <code>assertTrue( Boolean );</code>
- */
- public static function failTrue( message:String, condition:Boolean ):void
- {
- if ( condition )
- failWithUserMessage( message, "expected false but was true" );
- }
-
- //TODO: (<code>null</code> okay) needs removal?
- /**
- * Asserts that an object is null.
- *
- * @param rest
- * Accepts an argument of type Object.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertNull( String, Object );</code>
- * <code>assertNull( Object );</code>
- *
- */
- public static function assertNull(... rest):void
- {
- _assertCount++;
- if ( rest.length == 2 )
- failNotNull( rest[0], rest[1] );
- else
- failNotNull( "", rest[0] );
- }
-
- /**
- * Asserts that an object is not null.
- *
- * @param rest
- * Accepts an argument of type Boolean.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertTrue( String, Boolean );</code>
- * <code>assertTrue( Boolean );</code>
- */
- public static function failNull( message:String, object:Object ):void
- {
- if ( object == null )
- failWithUserMessage( message, "object was null: " + object );
- }
-
- //TODO: (<code>null</code> okay) needs removal?
- /**
- * Asserts that an object is not null.
- *
- * @param rest
- * Accepts an argument of type Object.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertNotNull( String, Object );</code>
- * <code>assertNotNull( Object );</code>
- */
- public static function assertNotNull(... rest):void
- {
- _assertCount++;
- if ( rest.length == 2 )
- failNull( rest[0], rest[1] );
- else
- failNull( "", rest[0] );
- }
-
- /**
- * Asserts that an object is not null.
- *
- * @param rest
- * Accepts an argument of type Boolean.
- * If two arguments are passed the first argument must be a String
- * and will be used as the error message.
- *
- * <code>assertTrue( String, Boolean );</code>
- * <code>assertTrue( Boolean );</code>
- */
- public static function failNotNull( message:String, object:Object ):void
- {
- if ( object != null )
- failWithUserMessage( message, "object was not null: " + object );
- }
- //TODO: (<code>null</code> okay) needs removal?
- /**
- * Fails a test with the argument message.
- *
- * @param failMessage
- * the identifying message for the <code> AssertionFailedError</code> (<code>null</code>
- * okay)
- * @see AssertionFailedError
- */
- public static function fail( failMessage:String = ""):void
- {
- var error:AssertionFailedError = new AssertionFailedError(failMessage);
- //this seems necessary for js:
- if (error.message!=failMessage) error.message = failMessage;
- throw error;
- }
-
-
- /**
- * @private
- */
- private static function failWithUserMessage( userMessage:String, failMessage:String ):void
- {
- if ( userMessage.length > 0 )
- userMessage = userMessage + " - ";
- failMessage = userMessage + failMessage;
- fail(failMessage);
- }
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/GenericTests/src/flexunit/framework/AssertionFailedError.as
----------------------------------------------------------------------
diff --git a/manualtests/GenericTests/src/flexunit/framework/AssertionFailedError.as b/manualtests/GenericTests/src/flexunit/framework/AssertionFailedError.as
deleted file mode 100644
index 359361f..0000000
--- a/manualtests/GenericTests/src/flexunit/framework/AssertionFailedError.as
+++ /dev/null
@@ -1,39 +0,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.
- */
-package flexunit.framework
-{
- /**
- * <code>Error</code> class used for failures in assertions
- *
- * @see Assert
- */
- public class AssertionFailedError extends Error
- {
- /**
- * Throws a new <code>Error</code> of type <code>AssertionError</code>
- * with the passed in message
- *
- * @param message The message associated with the error (<code>null</code> okay)
- * @param id The id of the error if desired (<code>null</code> okay)
- */
- public function AssertionFailedError(message:String="", id:int=0)
- {
- super(message, id);
- }
-
- }
-}
\ No newline at end of file
[24/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
FLEX-35354 - Rename TabsItemRendererFactoryForArrayListData to
TabsDynamicItemsRendererFactoryForArrayListData - Update
TabsDynamicItemsRendererFactoryForArrayListData with new implement
Posted by pe...@apache.org.
FLEX-35354 - Rename TabsItemRendererFactoryForArrayListData to TabsDynamicItemsRendererFactoryForArrayListData
- Update TabsDynamicItemsRendererFactoryForArrayListData with new implementation of DynamicItemsRendererFactoryForArrayListData
- Update example MDLDynamicTabsExample
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/5b8f1c58
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/5b8f1c58
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/5b8f1c58
Branch: refs/heads/feature/dragAndDrop
Commit: 5b8f1c5898c776eb7470e855073833e68e794a6d
Parents: 56e467a
Author: piotrz <pi...@apache.org>
Authored: Wed Aug 23 23:53:09 2017 +0200
Committer: piotrz <pi...@apache.org>
Committed: Wed Aug 23 23:53:09 2017 +0200
----------------------------------------------------------------------
.../src/main/flex/views/InitialView.mxml | 24 ++-
.../src/main/resources/mdl-styles.css | 2 +-
.../src/main/flex/MDLClasses.as | 2 +-
...namicItemsRendererFactoryForArrayListData.as | 108 ++++++++++
.../TabsItemRendererFactoryForArrayListData.as | 206 -------------------
.../org/apache/flex/mdl/beads/views/TabsView.as | 6 +-
.../src/main/resources/defaults.css | 4 +-
7 files changed, 129 insertions(+), 223 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5b8f1c58/examples/flexjs/MDLDynamicTabsExample/src/main/flex/views/InitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTabsExample/src/main/flex/views/InitialView.mxml b/examples/flexjs/MDLDynamicTabsExample/src/main/flex/views/InitialView.mxml
index 5523b6f..1482982 100644
--- a/examples/flexjs/MDLDynamicTabsExample/src/main/flex/views/InitialView.mxml
+++ b/examples/flexjs/MDLDynamicTabsExample/src/main/flex/views/InitialView.mxml
@@ -39,14 +39,18 @@ limitations under the License.
<mdl:model>
<models:TabsModel id="tabsModel"/>
</mdl:model>
- <mdl:Tabs id="myTabs" selectedIndex="1" tabIdField="tabId" labelField="label" className="customTabs"
- dataProvider="{tabsModel.tabs}" width="500">
- <mdl:beads>
- <js:DataProviderCollectionChangeNotifier sourceID="tabsModel" propertyName="tabs"
- destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
- <js:DataProviderItemsChangeNotifier sourceID="tabsModel" propertyName="tabs"
- destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
- </mdl:beads>
- </mdl:Tabs>
- <mdl:Button text="Add new Tab" click="onAddNewTabClick(event)"/>
+ <mdl:GridCell column="6">
+ <mdl:Tabs id="myTabs" selectedIndex="1" tabIdField="tabId" labelField="label" className="customTabs"
+ dataProvider="{tabsModel.tabs}" width="500">
+ <mdl:beads>
+ <js:DataProviderCollectionChangeNotifier sourceID="tabsModel" propertyName="tabs"
+ destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
+ <js:DataProviderItemsChangeNotifier sourceID="tabsModel" propertyName="tabs"
+ destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
+ </mdl:beads>
+ </mdl:Tabs>
+ </mdl:GridCell>
+ <mdl:GridCell>
+ <mdl:Button text="Add new Tab" click="onAddNewTabClick(event)"/>
+ </mdl:GridCell>
</mdl:Grid>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5b8f1c58/examples/flexjs/MDLDynamicTabsExample/src/main/resources/mdl-styles.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLDynamicTabsExample/src/main/resources/mdl-styles.css b/examples/flexjs/MDLDynamicTabsExample/src/main/resources/mdl-styles.css
index 8d52a54..e713389 100644
--- a/examples/flexjs/MDLDynamicTabsExample/src/main/resources/mdl-styles.css
+++ b/examples/flexjs/MDLDynamicTabsExample/src/main/resources/mdl-styles.css
@@ -27,5 +27,5 @@
{
IItemRenderer: ClassReference("itemRenderers.CustomTabBarPanelItemRenderer");
IBeadModel: ClassReference("org.apache.flex.mdl.beads.models.TabArrayListModel");
- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.mdl.beads.TabsItemRendererFactoryForArrayListData");
+ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.mdl.beads.TabsDynamicItemsRendererFactoryForArrayListData");
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5b8f1c58/frameworks/projects/MaterialDesignLite/src/main/flex/MDLClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/MDLClasses.as b/frameworks/projects/MaterialDesignLite/src/main/flex/MDLClasses.as
index d9ac1ac..00ffe9d 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/MDLClasses.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/MDLClasses.as
@@ -28,7 +28,7 @@ package
internal class MDLClasses
{
import org.apache.flex.mdl.beads.TabsItemRendererFactoryForArrayData; TabsItemRendererFactoryForArrayData;
- import org.apache.flex.mdl.beads.TabsItemRendererFactoryForArrayListData; TabsItemRendererFactoryForArrayListData;
+ import org.apache.flex.mdl.beads.TabsDynamicItemsRendererFactoryForArrayListData; TabsDynamicItemsRendererFactoryForArrayListData;
import org.apache.flex.mdl.beads.models.TabArrayModel; TabArrayModel;
import org.apache.flex.mdl.beads.models.TabArrayListModel; TabArrayListModel;
import org.apache.flex.mdl.beads.models.ToastModel; ToastModel;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5b8f1c58/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsDynamicItemsRendererFactoryForArrayListData.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsDynamicItemsRendererFactoryForArrayListData.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsDynamicItemsRendererFactoryForArrayListData.as
new file mode 100644
index 0000000..371f79b
--- /dev/null
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsDynamicItemsRendererFactoryForArrayListData.as
@@ -0,0 +1,108 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.mdl.beads
+{
+ import org.apache.flex.collections.IArrayList;
+ import org.apache.flex.core.IListPresentationModel;
+ import org.apache.flex.events.CollectionEvent;
+
+ import org.apache.flex.events.IEventDispatcher;
+ import org.apache.flex.html.beads.DynamicItemsRendererFactoryForArrayListData;
+ import org.apache.flex.mdl.beads.models.ITabModel;
+ import org.apache.flex.mdl.supportClasses.ITabItemRenderer;
+ import org.apache.flex.events.Event;
+
+ [Event(name="itemRendererCreated",type="org.apache.flex.events.ItemRendererEvent")]
+
+ /**
+ * The TabsDynamicItemsRendererFactoryForArrayListData class reads an
+ * array of data and creates an item renderer for every
+ * ITabItemRenderer in the array.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ public class TabsDynamicItemsRendererFactoryForArrayListData extends DynamicItemsRendererFactoryForArrayListData
+ {
+ public function TabsDynamicItemsRendererFactoryForArrayListData(target:Object = null)
+ {
+ super(target);
+ }
+
+ protected var tabsIdField:String;
+
+ /**
+ * finish setup
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.8
+ */
+ override protected function initComplete(event:Event):void
+ {
+ var model:ITabModel = _strand.getBeadByType(ITabModel) as ITabModel;
+ tabsIdField = model.tabIdField;
+
+ super.initComplete(event);
+ }
+
+ override protected function dataProviderChangeHandler(event:Event):void
+ {
+ var dp:IArrayList = dataProviderModel.dataProvider as IArrayList;
+ if (!dp)
+ return;
+
+ dataGroup.removeAllItemRenderers();
+
+ var presentationModel:IListPresentationModel = _strand.getBeadByType(IListPresentationModel) as IListPresentationModel;
+
+ var n:int = dp.length;
+ for (var i:int = 0; i < n; i++)
+ {
+ var ir:ITabItemRenderer = itemRendererFactory.createItemRenderer(dataGroup) as ITabItemRenderer;
+ ir.tabIdField = tabsIdField;
+
+ var item:Object = dp.getItemAt(i);
+ fillRenderer(i, item, ir, presentationModel);
+ }
+
+ IEventDispatcher(_strand).dispatchEvent(new Event("itemsCreated"));
+ }
+
+ override protected function itemAddedHandler(event:CollectionEvent):void
+ {
+ var dp:IArrayList = dataProviderModel.dataProvider as IArrayList;
+ if (!dp)
+ return;
+
+ var presentationModel:IListPresentationModel = _strand.getBeadByType(IListPresentationModel) as IListPresentationModel;
+
+ var ir:ITabItemRenderer = itemRendererFactory.createItemRenderer(dataGroup) as ITabItemRenderer;
+ ir.tabIdField = tabsIdField;
+
+ var index:int = dp.length - 1;
+ fillRenderer(index, event.item, ir, presentationModel);
+
+ IEventDispatcher(_strand).dispatchEvent(new Event("itemsCreated"));
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5b8f1c58/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsItemRendererFactoryForArrayListData.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsItemRendererFactoryForArrayListData.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsItemRendererFactoryForArrayListData.as
deleted file mode 100644
index c323332..0000000
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/TabsItemRendererFactoryForArrayListData.as
+++ /dev/null
@@ -1,206 +0,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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package org.apache.flex.mdl.beads
-{
- import org.apache.flex.collections.IArrayList;
- import org.apache.flex.core.IBead;
- import org.apache.flex.core.IDataProviderItemRendererMapper;
- import org.apache.flex.core.IItemRendererClassFactory;
- import org.apache.flex.core.IItemRendererParent;
- import org.apache.flex.core.IListPresentationModel;
- import org.apache.flex.core.IStrand;
- import org.apache.flex.core.SimpleCSSStyles;
- import org.apache.flex.core.UIBase;
- import org.apache.flex.core.ValuesManager;
- import org.apache.flex.events.CollectionEvent;
-
- import org.apache.flex.events.EventDispatcher;
- import org.apache.flex.events.IEventDispatcher;
- import org.apache.flex.html.beads.IListView;
- import org.apache.flex.mdl.beads.models.ITabModel;
- import org.apache.flex.mdl.supportClasses.ITabItemRenderer;
- import org.apache.flex.events.Event;
-
- [Event(name="itemRendererCreated",type="org.apache.flex.events.ItemRendererEvent")]
-
- /**
- * The TabsItemRendererFactoryForArrayListData class reads an
- * array of data and creates an item renderer for every
- * ITabItemRenderer in the array.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- public class TabsItemRendererFactoryForArrayListData extends EventDispatcher implements IBead, IDataProviderItemRendererMapper
- {
- public function TabsItemRendererFactoryForArrayListData(target:Object = null)
- {
- super(target);
- }
-
- protected var dataProviderModel:ITabModel;
-
- protected var labelField:String;
- protected var tabsIdField:String;
-
- private var _strand:IStrand;
-
- /**
- * @copy org.apache.flex.core.IBead#strand
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- public function set strand(value:IStrand):void
- {
- _strand = value;
- IEventDispatcher(value).addEventListener("initComplete",finishSetup);
- }
-
- /**
- * finish setup
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- private function finishSetup(event:Event):void
- {
- IEventDispatcher(_strand).removeEventListener("initComplete",finishSetup);
-
- dataProviderModel = _strand.getBeadByType(ITabModel) as ITabModel;
- var listView:IListView = _strand.getBeadByType(IListView) as IListView;
- dataGroup = listView.dataGroup;
- dataProviderModel.addEventListener("dataProviderChanged", dataProviderChangeHandler);
- dataProviderModel.addEventListener(CollectionEvent.ITEM_ADDED, itemAddedHandler);
-
- tabsIdField = dataProviderModel.tabIdField;
- labelField = dataProviderModel.labelField;
-
- dataProviderChangeHandler(null);
- }
-
- private var _itemRendererFactory:IItemRendererClassFactory;
-
- /**
- * The org.apache.flex.core.IItemRendererClassFactory used
- * to generate instances of item renderers.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- public function get itemRendererFactory():IItemRendererClassFactory
- {
- if (_itemRendererFactory == null) {
- var factory:IItemRendererClassFactory = _strand.getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;
- if (factory == null) {
- factory = new (ValuesManager.valuesImpl.getValue(_strand, "iItemRendererClassFactory")) as IItemRendererClassFactory;
- _strand.addBead(factory);
- }
- _itemRendererFactory = factory;
- }
- return _itemRendererFactory;
- }
-
- /**
- * @private
- */
- public function set itemRendererFactory(value:IItemRendererClassFactory):void
- {
- _itemRendererFactory = value;
- }
-
- /**
- * The org.apache.flex.core.IItemRendererParent that will
- * parent the item renderers.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.8
- */
- protected var dataGroup:IItemRendererParent;
-
- protected function dataProviderChangeHandler(event:Event):void
- {
- var dp:IArrayList = dataProviderModel.dataProvider as IArrayList;
- if (!dp)
- return;
-
- dataGroup.removeAllItemRenderers();
-
- var presentationModel:IListPresentationModel = _strand.getBeadByType(IListPresentationModel) as IListPresentationModel;
-
- var n:int = dp.length;
- for (var i:int = 0; i < n; i++)
- {
- var ir:ITabItemRenderer = itemRendererFactory.createItemRenderer(dataGroup) as ITabItemRenderer;
- dataGroup.addItemRenderer(ir);
- ir.index = i;
- ir.labelField = labelField;
- ir.tabIdField = tabsIdField;
-
- if (presentationModel) {
- var style:SimpleCSSStyles = new SimpleCSSStyles();
- style.marginBottom = presentationModel.separatorThickness;
- UIBase(ir).style = style;
- UIBase(ir).height = presentationModel.rowHeight;
- UIBase(ir).percentWidth = 100;
- }
- ir.data = dp.getItemAt(i);
- }
-
- IEventDispatcher(_strand).dispatchEvent(new Event("itemsCreated"));
- }
-
- private function itemAddedHandler(event:CollectionEvent):void
- {
- var dp:IArrayList = dataProviderModel.dataProvider as IArrayList;
- if (!dp)
- return;
-
- var presentationModel:IListPresentationModel = _strand.getBeadByType(IListPresentationModel) as IListPresentationModel;
-
- var ir:ITabItemRenderer = itemRendererFactory.createItemRenderer(dataGroup) as ITabItemRenderer;
- dataGroup.addItemRenderer(ir);
-
- ir.index = dp.length - 1;
- ir.labelField = labelField;
- ir.tabIdField = tabsIdField;
-
- if (presentationModel) {
- var style:SimpleCSSStyles = new SimpleCSSStyles();
- style.marginBottom = presentationModel.separatorThickness;
- UIBase(ir).style = style;
- UIBase(ir).height = presentationModel.rowHeight;
- UIBase(ir).percentWidth = 100;
- }
- ir.data = event.item;
-
- IEventDispatcher(_strand).dispatchEvent(new Event("itemsCreated"));
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5b8f1c58/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
index ffe291a..34c09f2 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
@@ -26,7 +26,7 @@ package org.apache.flex.mdl.beads.views
import org.apache.flex.core.IStrand;
import org.apache.flex.mdl.TabBar;
import org.apache.flex.mdl.TabBarPanel;
- import org.apache.flex.mdl.beads.TabsItemRendererFactoryForArrayListData;
+ import org.apache.flex.mdl.beads.TabsDynamicItemsRendererFactoryForArrayListData;
import org.apache.flex.mdl.supportClasses.ITabItemRenderer;
/**
@@ -166,8 +166,8 @@ package org.apache.flex.mdl.beads.views
public function isTabsDynamic():Boolean
{
- var arrayListMapper:TabsItemRendererFactoryForArrayListData =
- _strand.getBeadByType(IDataProviderItemRendererMapper) as TabsItemRendererFactoryForArrayListData;
+ var arrayListMapper:TabsDynamicItemsRendererFactoryForArrayListData =
+ _strand.getBeadByType(IDataProviderItemRendererMapper) as TabsDynamicItemsRendererFactoryForArrayListData;
return arrayListMapper != null;
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5b8f1c58/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css b/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
index f8b3b05..9e5ece7 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
+++ b/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
@@ -122,7 +122,7 @@ Tabs
IBeadView: ClassReference("org.apache.flex.mdl.beads.views.TabsView");
IBeadModel: ClassReference("org.apache.flex.mdl.beads.models.TabArrayModel");
IBeadLayout: ClassReference(null);
- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.mdl.beads.TabsItemRendererFactoryForArrayListData");
+ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.mdl.beads.TabsDynamicItemsRendererFactoryForArrayListData");
IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
IItemRenderer: ClassReference("org.apache.flex.mdl.itemRenderers.TabBarPanelItemRenderer");
}
@@ -132,7 +132,7 @@ TabBar
IBeadView: ClassReference("org.apache.flex.mdl.beads.views.TabBarView");
IBeadModel: ClassReference("org.apache.flex.mdl.beads.models.TabArrayModel");
IBeadLayout: ClassReference(null);
- IDataProviderItemRendererMapper: ClassReference("org.apache.flex.mdl.beads.TabsItemRendererFactoryForArrayListData");
+ IDataProviderItemRendererMapper: ClassReference("org.apache.flex.mdl.beads.TabsDynamicItemsRendererFactoryForArrayListData");
IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
IItemRenderer: ClassReference("org.apache.flex.mdl.itemRenderers.TabBarButtonTabsItemRenderer");
}
[07/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
FLEX-35350 - THead and TBody need to be created a bit early cause MDL
complaining with NPE when dataProvider is null
Posted by pe...@apache.org.
FLEX-35350 - THead and TBody need to be created a bit early cause MDL complaining with NPE when dataProvider is null
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/d52d531b
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/d52d531b
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/d52d531b
Branch: refs/heads/feature/dragAndDrop
Commit: d52d531b04895d7ecc38167c96a08d9ca9e75594
Parents: 10163b7
Author: piotrz <pi...@apache.org>
Authored: Tue Aug 22 00:23:26 2017 +0200
Committer: piotrz <pi...@apache.org>
Committed: Tue Aug 22 00:23:26 2017 +0200
----------------------------------------------------------------------
.../src/main/flex/org/apache/flex/mdl/Table.as | 26 ++++++++------------
1 file changed, 10 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/d52d531b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Table.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Table.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Table.as
index 2513548..d4a7514 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Table.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Table.as
@@ -102,9 +102,6 @@ package org.apache.flex.mdl
{
COMPILE::JS
{
- addTHeadToParent();
- addTBodyToParent();
-
if (_isTheadAddedToParent && _isTbodyAddedToParent)
{
tbody.addElement(c);
@@ -172,12 +169,12 @@ package org.apache.flex.mdl
element = document.createElement('table') as WrappedHTMLElement;
- thead = new THead();
- tbody = new TBody();
-
positioner = element;
element.flexjs_wrapper = this;
+ addTHeadToParent();
+ addTBodyToParent();
+
return element;
}
@@ -242,11 +239,10 @@ package org.apache.flex.mdl
{
if (_isTheadAddedToParent) return;
- if (thead)
- {
- super.addElement(thead);
- _isTheadAddedToParent = true;
- }
+ thead = new THead();
+ super.addElement(thead);
+
+ _isTheadAddedToParent = true;
}
COMPILE::JS
@@ -254,11 +250,9 @@ package org.apache.flex.mdl
{
if (_isTbodyAddedToParent) return;
- if (tbody)
- {
- super.addElement(tbody);
- _isTbodyAddedToParent = true;
- }
+ tbody = new TBody();
+ super.addElement(tbody);
+ _isTbodyAddedToParent = true;
}
}
}
[25/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Added helper function
Posted by pe...@apache.org.
Added helper function
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/daca90f9
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/daca90f9
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/daca90f9
Branch: refs/heads/feature/dragAndDrop
Commit: daca90f9e688a3ac79edd569f759df2b5ba89b80
Parents: 5b8f1c5
Author: Harbs <ha...@in-tools.com>
Authored: Sun Aug 27 07:43:25 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Sun Aug 27 07:43:25 2017 +0300
----------------------------------------------------------------------
.../Basic/src/main/flex/BasicClasses.as | 4 ++++
.../org/apache/flex/html/addElementToWrapper.as | 20 ++++++++++++++++++++
2 files changed, 24 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/daca90f9/frameworks/projects/Basic/src/main/flex/BasicClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/BasicClasses.as b/frameworks/projects/Basic/src/main/flex/BasicClasses.as
index 697efa8..bc62158 100644
--- a/frameworks/projects/Basic/src/main/flex/BasicClasses.as
+++ b/frameworks/projects/Basic/src/main/flex/BasicClasses.as
@@ -27,6 +27,10 @@ package
*/
internal class BasicClasses
{
+ COMPILE::JS
+ {
+ import org.apache.flex.html.addElementToWrapper; addElementToWrapper;
+ }
import org.apache.flex.html.ToolTip; ToolTip;
import org.apache.flex.html.accessories.NumericOnlyTextInputBead; NumericOnlyTextInputBead;
import org.apache.flex.html.beads.DispatchInputFinishedBead; DispatchInputFinishedBead;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/daca90f9/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as
new file mode 100644
index 0000000..0c4427c
--- /dev/null
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as
@@ -0,0 +1,20 @@
+package org.apache.flex.html
+{
+ COMPILE::JS
+ {
+ import org.apache.flex.core.UIBase;
+ import org.apache.flex.core.WrappedHTMLElement;
+ }
+
+ /**
+ * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
+ */
+ COMPILE::JS
+ public function addElementToWrapper(wrapper:UIBase,type:String):WrappedHTMLElement
+ {
+ var elem:WrappedHTMLElement = document.createElement(type) as WrappedHTMLElement;
+ wrapper.positioner = wrapper.element = elem;
+ elem.flexjs_wrapper = wrapper;
+ return elem;
+ }
+}
\ No newline at end of file
[19/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Fixed a few errors in DataGridXcompile
Posted by pe...@apache.org.
Fixed a few errors in DataGridXcompile
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f0ddbd34
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f0ddbd34
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f0ddbd34
Branch: refs/heads/feature/dragAndDrop
Commit: f0ddbd345147baa20c661b4d1499d0ff7ef7c868
Parents: ebc568a
Author: Harbs <ha...@in-tools.com>
Authored: Tue Aug 22 11:01:33 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Tue Aug 22 11:01:33 2017 +0300
----------------------------------------------------------------------
.../apache/flex/html/customControls/beads/DataGridView.as | 8 ++++++++
.../apache/flex/html/staticControls/beads/BoxGridView.as | 10 +++++++++-
2 files changed, 17 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f0ddbd34/manualtests/DataGridXcompile/src/org/apache/flex/html/customControls/beads/DataGridView.as
----------------------------------------------------------------------
diff --git a/manualtests/DataGridXcompile/src/org/apache/flex/html/customControls/beads/DataGridView.as b/manualtests/DataGridXcompile/src/org/apache/flex/html/customControls/beads/DataGridView.as
index 15fe694..ba189d2 100644
--- a/manualtests/DataGridXcompile/src/org/apache/flex/html/customControls/beads/DataGridView.as
+++ b/manualtests/DataGridXcompile/src/org/apache/flex/html/customControls/beads/DataGridView.as
@@ -26,6 +26,7 @@ package org.apache.flex.html.customControls.beads
import org.apache.flex.core.IDataGridModel;
import org.apache.flex.core.IDataGridPresentationModel;
import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.IUIBase;
import org.apache.flex.core.UIBase;
import org.apache.flex.core.ValuesManager;
import org.apache.flex.events.Event;
@@ -145,5 +146,12 @@ package org.apache.flex.html.customControls.beads
IEventDispatcher(_strand).dispatchEvent(new Event('change'));
}
+ /**
+ * @flexjsignorecoercion org.apache.flex.core.IUIBase
+ */
+ public function get host():IUIBase
+ {
+ return _strand as IUIBase;
+ }
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f0ddbd34/manualtests/DataGridXcompile/src/org/apache/flex/html/staticControls/beads/BoxGridView.as
----------------------------------------------------------------------
diff --git a/manualtests/DataGridXcompile/src/org/apache/flex/html/staticControls/beads/BoxGridView.as b/manualtests/DataGridXcompile/src/org/apache/flex/html/staticControls/beads/BoxGridView.as
index a9d7b8f..7a75394 100644
--- a/manualtests/DataGridXcompile/src/org/apache/flex/html/staticControls/beads/BoxGridView.as
+++ b/manualtests/DataGridXcompile/src/org/apache/flex/html/staticControls/beads/BoxGridView.as
@@ -16,10 +16,11 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
-package org.apache.flex.html.beads
+package org.apache.flex.html.staticControls.beads
{
import org.apache.flex.core.IBeadView;
import org.apache.flex.core.IStrand;
+ import org.apache.flex.core.IUIBase;
import org.apache.flex.core.UIBase;
import org.apache.flex.html.Label;
@@ -44,5 +45,12 @@ package org.apache.flex.html.beads
label.height = 25;
UIBase(_strand).addElement(label);
}
+ /**
+ * @flexjsignorecoercion org.apache.flex.core.IUIBase
+ */
+ public function get host():IUIBase
+ {
+ return _strand as IUIBase;
+ }
}
}
[26/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Added missing pieces for TextBlock management Fixed bug in
GroupElement.replaceElements()
Posted by pe...@apache.org.
Added missing pieces for TextBlock management
Fixed bug in GroupElement.replaceElements()
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f4276e0d
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f4276e0d
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f4276e0d
Branch: refs/heads/feature/dragAndDrop
Commit: f4276e0dd628a0a3a22a33d1890ea3c1e1943b5a
Parents: daca90f
Author: Harbs <ha...@in-tools.com>
Authored: Sun Aug 27 07:46:55 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Sun Aug 27 07:46:55 2017 +0300
----------------------------------------------------------------------
.../apache/flex/text/engine/ContentElement.as | 25 ++++++++++++++++----
.../org/apache/flex/text/engine/GroupElement.as | 21 ++++++++++++++--
.../org/apache/flex/text/engine/ITextBlock.as | 3 +++
.../flex/org/apache/flex/text/html/TextBlock.as | 4 ++++
4 files changed, 47 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4276e0d/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ContentElement.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ContentElement.as b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ContentElement.as
index 1b35305..e1358a4 100644
--- a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ContentElement.as
+++ b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ContentElement.as
@@ -44,10 +44,18 @@ package org.apache.flex.text.engine
/**
* The parent
*/
- public function get groupElement() : GroupElement
+ private var _groupElement:GroupElement;
+ public function get groupElement():GroupElement
{
+ if(_groupElement)
+ return _groupElement.getElementIndex(this) < 0 ? null : _groupElement;
return null;
}
+ public function set groupElement(value:GroupElement):void
+ {
+ _groupElement = value;
+ }
+
public function get rawText() : String
{
return null;
@@ -56,13 +64,22 @@ package org.apache.flex.text.engine
{
return null;
}
- public function get textBlock() : ITextBlock
+
+ private var _textBlock:ITextBlock;
+ public function get textBlock():ITextBlock
{
- return null;
+ if(groupElement)
+ return groupElement.textBlock;
+ return _textBlock;
}
+ public function set textBlock(value:ITextBlock):void
+ {
+ _textBlock = value;
+ }
+
public function get textBlockBeginIndex() : int
{
- return null;
+ return textBlock ? textBlock.getRelativeStart(this) : 0;
}
public var textRotation : String
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4276e0d/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/GroupElement.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/GroupElement.as b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/GroupElement.as
index a61c97f..7d5d928 100644
--- a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/GroupElement.as
+++ b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/GroupElement.as
@@ -20,6 +20,7 @@ package org.apache.flex.text.engine
{
import org.apache.flex.events.EventDispatcher;
import org.apache.flex.text.engine.TextElement;
+ import org.apache.flex.text.engine.GroupElement;
public class GroupElement extends ContentElement
{
@@ -27,7 +28,10 @@ package org.apache.flex.text.engine
{
super(elementFormat, eventMirror, textRotation);
if(elements)
+ {
_elements = elements;
+ setElementsGroup(this);
+ }
else
_elements = new Vector.<ContentElement>();
}
@@ -67,6 +71,7 @@ package org.apache.flex.text.engine
}
public function replaceElements(beginIndex:int, endIndex:int, newElements:Vector.<ContentElement>):Vector.<ContentElement>
{
+ setElementsGroup(null);
COMPILE::SWF
{
var args:Array = [beginIndex, endIndex-beginIndex];
@@ -79,15 +84,25 @@ package org.apache.flex.text.engine
}
COMPILE::JS
{
- var args:Array = [beginIndex, endIndex-beginIndex].concat(newElements);
+ var args:Array = [beginIndex, endIndex-beginIndex];
+ // don't concat null
+ if(newElements)
+ args = args.concat(newElements);
// _elements.splice(beginIndex,endIndex-beginIndex);
}
- _elements.splice.apply(_elements, args);
+ _elements.splice.apply(_elements, args);
+ setElementsGroup(this);
return _elements;
}
public function setElements(value:Vector.<ContentElement>):void
{
_elements = value;
+ setElementsGroup(this);
+ }
+ private function setElementsGroup(group:GroupElement):void
+ {
+ for(var i:int=0; i<_elements.length; i++)
+ _elements[i].groupElement = group;
}
public function splitTextElement(elementIndex:int, splitIndex:int):TextElement
{
@@ -101,7 +116,9 @@ package org.apache.flex.text.engine
var nextText:String = textElem.rawText.substr(splitIndex);
var newElem:TextElement = new TextElement(nextText,textElem.elementFormat,textElem.eventMirror,textElem.textRotation);
textElem.text = firstText;
+ newElem.groupElement = this;
_elements.splice(elementIndex+1,0,newElem);
+
return newElem;
}
public function ungroupElements(groupIndex:int):void
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4276e0d/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ITextBlock.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ITextBlock.as b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ITextBlock.as
index 7f9be7c..8d51b90 100644
--- a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ITextBlock.as
+++ b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ITextBlock.as
@@ -19,6 +19,7 @@
package org.apache.flex.text.engine
{
import org.apache.flex.text.engine.ITextFactory;
+ import org.apache.flex.text.engine.ContentElement;
public interface ITextBlock
{
@@ -64,5 +65,7 @@ package org.apache.flex.text.engine
function releaseLineCreationData():void;
function releaseLines(firstLine:ITextLine, lastLine:ITextLine):void;
+ function getRelativeStart(element:ContentElement):int;
+
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4276e0d/frameworks/projects/Text/src/main/flex/org/apache/flex/text/html/TextBlock.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/html/TextBlock.as b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/html/TextBlock.as
index cb9cd5d..45f461a 100644
--- a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/html/TextBlock.as
+++ b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/html/TextBlock.as
@@ -279,6 +279,10 @@ package org.apache.flex.text.html
{
lines.length = 0;
}
+ public function getRelativeStart(element:ContentElement):int
+ {
+ return 0;
+ }
}
}
\ No newline at end of file
[28/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
Forgot header
Posted by pe...@apache.org.
Forgot header
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/37dc6003
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/37dc6003
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/37dc6003
Branch: refs/heads/feature/dragAndDrop
Commit: 37dc60031f86d70159826770a9ea021046f65977
Parents: f19d967
Author: Harbs <ha...@in-tools.com>
Authored: Sun Aug 27 12:40:02 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Sun Aug 27 12:40:02 2017 +0300
----------------------------------------------------------------------
.../org/apache/flex/html/addElementToWrapper.as | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/37dc6003/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as
index 0c4427c..f7638ba 100644
--- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as
+++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/addElementToWrapper.as
@@ -1,3 +1,21 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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.html
{
COMPILE::JS
[12/32] git commit: [flex-asjs] [refs/heads/feature/dragAndDrop] -
-refactored ant builds of manual tests to be closer to examples,
and support for 'maven_compat' from test level ant scripts. -renamed
GenericTests to UnitTests and fixed some display issu
Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/core/StrandTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/core/StrandTesterTest.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/core/StrandTesterTest.as
new file mode 100644
index 0000000..f6715bb
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/core/StrandTesterTest.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.core
+{
+ import flexunit.framework.Assert;
+
+ import org.apache.flex.core.Strand;
+
+ public class StrandTesterTest
+ {
+ [Before]
+ public function setUp():void
+ {
+ }
+
+ [After]
+ public function tearDown():void
+ {
+ }
+
+ [BeforeClass]
+ public static function setUpBeforeClass():void
+ {
+ }
+
+ [AfterClass]
+ public static function tearDownAfterClass():void
+ {
+ }
+
+ [Test]
+ public function testIdProperty():void
+ {
+ var strand:Strand = new Strand();
+ strand.id = "foo";
+ Assert.assertEquals("Error testing Srand.id", "foo",strand.id);
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/jira/JiraTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/jira/JiraTesterTest.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/jira/JiraTesterTest.as
new file mode 100644
index 0000000..c361f39
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/jira/JiraTesterTest.as
@@ -0,0 +1,73 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.jira
+{
+ import flexunit.framework.Assert;
+
+
+ public class JiraTesterTest
+ {
+ public static var isJS:Boolean;
+ [BeforeClass]
+ public static function setUpBeforeClass():void
+ {
+ var js:Boolean = false;
+ try {
+ var check:* = getDefinitionByName("flash.system.Capabilities");
+ } catch (e:Error) {
+ js = true;
+ }
+ //if this next reference to 'check' is not included, then the above try/catch code
+ // appears to be optimized away in js-release mode
+ //todo: this is inconsistent with swf, need to create simple test case for jx compiler/gcc
+ if (check == null) {
+ js = true;
+ }
+ isJS = js;
+ }
+
+ [AfterClass]
+ public static function tearDownAfterClass():void
+ {
+ }
+
+
+ [Before]
+ public function setUp():void
+ {
+ }
+
+ [After]
+ public function tearDown():void
+ {
+ }
+
+
+ /*
+ // TEST METHODS
+ */
+
+ //example, postfix the test method with JIRA issue reference:
+ /*[Test]
+ public function testJIRA_FLEX_9999():void
+ {
+
+ }*/
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/observedbugs/ObservedBugTests.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/observedbugs/ObservedBugTests.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/observedbugs/ObservedBugTests.as
new file mode 100644
index 0000000..ab84f15
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/observedbugs/ObservedBugTests.as
@@ -0,0 +1,91 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.observedbugs
+{
+ import flexunit.framework.Assert;
+ import org.apache.flex.reflection.*;
+
+ public class ObservedBugTests
+ {
+
+ public static var isJS:Boolean;
+ [BeforeClass]
+ public static function setUpBeforeClass():void
+ {
+ var js:Boolean = false;
+ try {
+ var check:* = getDefinitionByName("flash.system.Capabilities");
+ } catch (e:Error) {
+ js = true;
+ }
+ //this was originally necessary to avoid a gcc-related bug in js for release mode only
+ if (check == null) {
+ js = true;
+ }
+ isJS = js;
+ }
+
+ [AfterClass]
+ public static function tearDownAfterClass():void
+ {
+ }
+
+ [Before]
+ public function setUp():void
+ {
+ }
+
+ [After]
+ public function tearDown():void
+ {
+ }
+
+
+ [Test]
+ public function testTryCatchJSReleaseModeWorks_a():void
+ {
+ var js:int = 1;
+ try {
+ js = getDefinitionByName("flash.system.Capabilities") != null ? 1 : 0;
+ } catch (e:Error) {
+ js = 2;
+ }
+
+ Assert.assertTrue("Unexpected value following try/catch",(isJS ? (js == 2) : (js == 1)));
+
+ }
+
+ //This Observed bug is no longer present 0.9.0
+ //it may be related to a Google Closure Compiler update since it was originally observed
+ //leaving the tests in here for now...
+ //[TestVariance(variance="JS",description="Variance in test, this test fails in JS-Release mode only")]
+ [Test]
+ public function testTryCatchJSReleaseModeFails_b():void
+ {
+ var js:Boolean = false;
+ try {
+ var check:* = getDefinitionByName("flash.system.Capabilities");
+ } catch (e:Error) {
+ js = true;
+ }
+
+ Assert.assertTrue("Unexpected value following try/catch",(isJS ? (js === true) : (js === false)));
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTest.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTest.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTest.as
new file mode 100644
index 0000000..9d39fc9
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTest.as
@@ -0,0 +1,373 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection
+{
+ import flexunit.framework.Assert;
+ import flexUnitTests.reflection.support.*;
+ import org.apache.flex.reflection.*;
+
+ public class ReflectionTesterTest
+ {
+
+ public static var isJS:Boolean;
+ [BeforeClass]
+ public static function setUpBeforeClass():void
+ {
+ var js:Boolean = false;
+ try {
+ var check:* = getDefinitionByName("flash.system.Capabilities");
+ } catch (e:Error) {
+ js = true;
+ }
+ //if this next reference to 'check' is not included, then the above try/catch code
+ //appears to be optimized away in js-release mode
+ //a separate test has been created for this
+ if (check == null) {
+ js = true;
+ }
+ isJS = js;
+ }
+
+ [AfterClass]
+ public static function tearDownAfterClass():void
+ {
+ }
+
+ [Before]
+ public function setUp():void
+ {
+ TestClass2.testStaticVar = "testStaticVar_val";
+ TestClass2.testStaticWriteOnly = "staticAccessor_initial_value";
+ }
+
+ [After]
+ public function tearDown():void
+ {
+ }
+
+ private static function retrieveItemWithName(collection:Array, name:String):DefinitionBase {
+ var ret:DefinitionBase;
+ var i:uint=0,l:uint=collection.length;
+ for (;i<l;i++) {
+ if (collection[i].name==name) {
+ ret = collection[i];
+ break;
+ }
+ }
+
+ return ret;
+ }
+
+
+ [Test]
+ public function testBasicDescribeTypeClass():void
+ {
+ var def:TypeDefinition = describeType(TestClass2);
+
+ Assert.assertEquals("Unexpected package name",def.packageName,"flexUnitTests.reflection.support");
+ Assert.assertEquals("Unexpected type name",def.name,"TestClass2");
+
+ var variables:Array = def.variables;
+ Assert.assertEquals("unexpected variables length",1,variables.length);
+
+
+ var methods:Array = def.methods;
+ Assert.assertEquals("unexpected methods length",2,methods.length);
+
+ var accessors:Array = def.accessors;
+ Assert.assertEquals("unexpected accessors length",3,accessors.length);
+
+ var constructor:MethodDefinition = def.constructorMethod;
+ Assert.assertEquals("unexpected constructor declaredBy",
+ "flexUnitTests.reflection.support.TestClass2",
+ constructor.declaredBy.qualifiedName);
+
+ Assert.assertEquals("unexpected constructor params",
+ 1,
+ constructor.parameters.length);
+
+ var meta:Array = def.retrieveMetaDataByName("TestMeta");
+ Assert.assertEquals("unexpected class specific meta length",
+ 1,
+ meta.length);
+
+
+ def = describeType(TestClass4);
+ Assert.assertEquals("Unexpected package name",def.packageName,"flexUnitTests.reflection.support");
+ Assert.assertEquals("Unexpected type name",def.name,"TestClass4");
+
+ variables = def.variables;
+ Assert.assertEquals("unexpected variables length",2,variables.length);
+
+
+ methods = def.methods;
+ Assert.assertEquals("unexpected methods length",4,methods.length);
+
+ accessors = def.accessors;
+ Assert.assertEquals("unexpected accessors length",6,accessors.length);
+
+ constructor = def.constructorMethod;
+ Assert.assertEquals("unexpected constructor declaredBy",
+ "flexUnitTests.reflection.support.TestClass4",
+ constructor.declaredBy.qualifiedName);
+
+ Assert.assertEquals("unexpected constructor params",
+ 0,
+ constructor.parameters.length);
+
+
+
+ }
+
+
+
+
+ [TestVariance(variance="JS",description="Variance in test due to current inability for js target to reflect into non-FlexJS base classes or typedefs")]
+ [Test]
+ public function testDescribeTypeClass():void
+ {
+ var def:TypeDefinition = describeType(TestClass1);
+ var expected:*;
+ Assert.assertEquals("Unexpected package name","flexUnitTests.reflection.support",def.packageName);
+ Assert.assertEquals("Unexpected type name",def.name,"TestClass1");
+
+ var variables:Array = def.variables;
+ Assert.assertEquals("unexpected instance variables length",3,variables.length);
+
+ //there is a difference based on the EventDispatcher inheritance chain differences between js and swf:
+ expected = isJS ? 4 : 7;
+ var methods:Array = def.methods;
+ Assert.assertEquals("unexpected instance methods length",expected,methods.length);
+
+ var accessors:Array = def.accessors;
+ Assert.assertEquals("unexpected instance accessors length",4,accessors.length);
+
+ var staticVariables:Array =def.staticVariables;
+ Assert.assertEquals("unexpected static variables length",2,staticVariables.length);
+
+ var staticMethods:Array = def.staticMethods;
+ Assert.assertEquals("unexpected static methods length",1,staticMethods.length);
+ //there is a difference based on the native inheritance of readonly 'prototype' not collected from 'Class' (or Object for js):
+ expected = isJS ? 3 : 4;
+ var staticAccessors:Array = def.staticAccessors;
+ Assert.assertEquals("unexpected static accessors length",expected,staticAccessors.length);
+
+
+ }
+
+ [TestVariance(variance="JS",description="Variance in test due to current inability for js target to reflect into non-FlexJS base classes or typedefs")]
+ [Test]
+ public function testDescribeTypeInstance():void
+ {
+ var def:TypeDefinition = describeType(new TestClass1());
+ var expected:*;
+ Assert.assertEquals("Unexpected package name","flexUnitTests.reflection.support",def.packageName);
+ Assert.assertEquals("Unexpected type name",def.name,"TestClass1");
+
+ var variables:Array = def.variables;
+ Assert.assertEquals("unexpected instance variables length",3,variables.length);
+
+ //there is a difference based on the EventDispatcher inheritance chain differences between js and swf:
+ expected = isJS ? 4 : 7;
+ var methods:Array = def.methods;
+ Assert.assertEquals("unexpected instance methods length",expected,methods.length);
+
+ var accessors:Array = def.accessors;
+ Assert.assertEquals("unexpected instance accessors length",4,accessors.length);
+
+ var staticVariables:Array =def.staticVariables;
+ Assert.assertEquals("unexpected static variables length",2,staticVariables.length);
+
+ var staticMethods:Array = def.staticMethods;
+ Assert.assertEquals("unexpected static methods length",1,staticMethods.length);
+ //there is a difference based on the native inheritance of readonly 'prototype' not collected from 'Class' (or Object for js):
+ expected = isJS ? 3 : 4;
+ var staticAccessors:Array = def.staticAccessors;
+ Assert.assertEquals("unexpected static accessors length",expected,staticAccessors.length);
+
+
+ }
+
+ [TestVariance(variance="JS",description="Variance in baseClasses due to current inability for js target to reflect into non-FlexJS base classes or typedefs")]
+ [Test]
+ public function testBaseClasses():void{
+ var def:TypeDefinition = describeType(TestClass1);
+
+ var baseClasses:Array = def.baseClasses;
+ var expected:uint = isJS ? 1 : 3;
+ Assert.assertEquals("unexpected baseclasses length",expected,baseClasses.length);
+ }
+
+
+ [Test]
+ public function testMemberAccess():void{
+ //all of these should succeed without error
+ var inst:TestClass2 = new TestClass2("");
+ var def:TypeDefinition = describeType(inst);
+
+ /** instance variables **/
+
+ var variables:Array = def.variables;
+ var variable:VariableDefinition = variables[0];
+ Assert.assertEquals("unexpected variable name","testVar",variable.name);
+ var meta:MetaDataDefinition = variable.retrieveMetaDataByName("TestMeta")[0];
+ Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
+
+ var metaArg:MetaDataArgDefinition = meta.getArgsByKey("foo")[0];
+ Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
+ Assert.assertEquals("unexpected meta arg value","instanceVariable",metaArg.value);
+
+ Assert.assertEquals("unexpected reflection initial variable value","testVar_val",inst[variable.name]);
+
+ var accessors:Array = def.accessors;
+ var testReadOnly:AccessorDefinition = retrieveItemWithName(accessors,"testReadOnly") as AccessorDefinition;
+ meta = testReadOnly.retrieveMetaDataByName("TestMeta")[0];
+ Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
+
+ metaArg = meta.getArgsByKey("foo")[0];
+ Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
+ Assert.assertEquals("unexpected meta arg value","instanceAccessor",metaArg.value);
+
+ /** instance accessors **/
+ var testWriteOnly:AccessorDefinition = retrieveItemWithName(accessors,"testWriteOnly") as AccessorDefinition;
+ var testReadWrite:AccessorDefinition = retrieveItemWithName(accessors,"testReadWrite") as AccessorDefinition;
+ Assert.assertNotNull(testReadOnly);
+ Assert.assertNotNull(testWriteOnly);
+ Assert.assertNotNull(testReadWrite);
+
+ Assert.assertEquals("unexpected accessor initial value","instanceAccessor_initial_value",inst[testReadOnly.name]);
+ Assert.assertEquals("unexpected accessor initial value","instanceAccessor_initial_value",inst[testReadWrite.name]);
+
+ inst[testWriteOnly.name] = "test";
+ Assert.assertEquals("unexpected accessor initial value","test",inst[testReadOnly.name]);
+ Assert.assertEquals("unexpected accessor initial value","test",inst[testReadWrite.name]);
+
+ inst[testReadWrite.name] = "test2";
+ Assert.assertEquals("unexpected accessor initial value","test2",inst[testReadOnly.name]);
+ Assert.assertEquals("unexpected accessor initial value","test2",inst[testReadWrite.name]);
+
+ /** instance methods **/
+ var methods:Array = def.methods;
+ var testMethod:MethodDefinition = retrieveItemWithName(methods,"testMethod") as MethodDefinition;
+ meta = testMethod.retrieveMetaDataByName("TestMeta")[0];
+ Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
+
+ metaArg = meta.getArgsByKey("foo")[0];
+ Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
+ Assert.assertEquals("unexpected meta arg value","instanceMethod",metaArg.value);
+ Assert.assertEquals("unexpected parameter count",0,testMethod.parameters.length);
+ inst[testMethod.name]();
+ Assert.assertEquals("unexpected method invocation result","testMethod was called",inst[testReadWrite.name]);
+
+ var testMethodWithArgs:MethodDefinition = retrieveItemWithName(methods,"testMethodWithArgs") as MethodDefinition;
+ Assert.assertEquals("unexpected parameter count",2,testMethodWithArgs.parameters.length);
+ Assert.assertTrue("unexpected method invocation result",inst[testMethodWithArgs.name]("test"));
+ Assert.assertFalse("unexpected method invocation result",inst[testMethodWithArgs.name]("test", false));
+ Assert.assertEquals("unexpected method invocation result","testMethodWithArgs was called",inst[testReadWrite.name]);
+
+
+
+ /** static vars **/
+ variables = def.staticVariables;
+
+
+ variable = variables[0];
+ Assert.assertEquals("unexpected variable name","testStaticVar",variable.name);
+ meta = variable.retrieveMetaDataByName("TestMeta")[0];
+ Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
+
+ metaArg = meta.getArgsByKey("foo")[0];
+ Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
+ Assert.assertEquals("unexpected meta arg value","staticVariable",metaArg.value);
+
+ Assert.assertEquals("unexpected reflection initial variable value","testStaticVar_val",TestClass2[variable.name]);
+
+ /** static accessors **/
+
+ accessors = def.staticAccessors;
+
+
+ testReadOnly = retrieveItemWithName(accessors,"testStaticReadOnly") as AccessorDefinition;
+ meta = testReadOnly.retrieveMetaDataByName("TestMeta")[0];
+ Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
+
+ metaArg = meta.getArgsByKey("foo")[0];
+ Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
+ Assert.assertEquals("unexpected meta arg value","staticAccessor",metaArg.value);
+
+
+ testWriteOnly = retrieveItemWithName(accessors,"testStaticWriteOnly") as AccessorDefinition;
+ testReadWrite = retrieveItemWithName(accessors,"testStaticReadWrite") as AccessorDefinition;
+ Assert.assertNotNull(testReadOnly);
+ Assert.assertNotNull(testWriteOnly);
+ Assert.assertNotNull(testReadWrite);
+
+ Assert.assertEquals("unexpected accessor initial value","staticAccessor_initial_value",TestClass2[testReadOnly.name]);
+ Assert.assertEquals("unexpected accessor initial value","staticAccessor_initial_value",TestClass2[testReadWrite.name]);
+
+ TestClass2[testWriteOnly.name] = "test";
+ Assert.assertEquals("unexpected accessor initial value","test",TestClass2[testReadOnly.name]);
+ Assert.assertEquals("unexpected accessor initial value","test",TestClass2[testReadWrite.name]);
+
+ TestClass2[testReadWrite.name] = "test2";
+ Assert.assertEquals("unexpected accessor initial value","test2",TestClass2[testReadOnly.name]);
+ Assert.assertEquals("unexpected accessor initial value","test2",TestClass2[testReadWrite.name]);
+
+
+ /** static methods **/
+ methods = def.staticMethods;
+ testMethod = retrieveItemWithName(methods,"testStaticMethod") as MethodDefinition;
+ meta = testMethod.retrieveMetaDataByName("TestMeta")[0];
+ Assert.assertEquals("unexpected meta name","TestMeta",meta.name);
+
+ metaArg = meta.getArgsByKey("foo")[0];
+ Assert.assertEquals("unexpected meta arg name","foo",metaArg.name);
+ Assert.assertEquals("unexpected meta arg value","staticMethod",metaArg.value);
+ Assert.assertEquals("unexpected parameter count",0,testMethod.parameters.length);
+ TestClass2[testMethod.name]();
+ Assert.assertEquals("unexpected method invocation result","testStaticMethod was called",TestClass2[testReadWrite.name]);
+
+ testMethodWithArgs = retrieveItemWithName(methods,"testStaticMethodWithArgs") as MethodDefinition;
+ Assert.assertEquals("unexpected parameter count",2,testMethodWithArgs.parameters.length);
+ Assert.assertTrue("unexpected method invocation result",TestClass2[testMethodWithArgs.name]("test"));
+ Assert.assertFalse("unexpected method invocation result",TestClass2[testMethodWithArgs.name]("test", false));
+ Assert.assertEquals("unexpected method invocation result","testStaticMethodWithArgs was called",TestClass2[testReadWrite.name]);
+
+ }
+
+
+ [Test]
+ public function testInterfaceReflection():void{
+ var def:TypeDefinition = describeType(ITestInterface4);
+ Assert.assertEquals("unexpected kind value","interface",def.kind);
+ Assert.assertEquals("unexpected interfaces length",3,def.interfaces.length);
+ Assert.assertEquals("unexpected accessors length",1,def.accessors.length);
+ Assert.assertEquals("unexpected methods length",1,def.methods.length);
+
+ Assert.assertEquals("unexpected variables length",0,def.variables.length);
+ Assert.assertEquals("unexpected staticVariables length",0,def.staticVariables.length);
+ Assert.assertEquals("unexpected variables length",0,def.staticMethods.length);
+ Assert.assertEquals("unexpected staticVariables length",0,def.staticAccessors.length);
+ Assert.assertNull("unexpected constructor Method definition",def.constructorMethod);
+ }
+
+
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestAlias.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestAlias.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestAlias.as
new file mode 100644
index 0000000..7fd5984
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestAlias.as
@@ -0,0 +1,90 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection
+{
+ import flexunit.framework.Assert;
+ import flexUnitTests.reflection.support.*;
+ import org.apache.flex.reflection.*;
+
+ public class ReflectionTesterTestAlias
+ {
+
+ public static var isJS:Boolean;
+ [BeforeClass]
+ public static function setUpBeforeClass():void
+ {
+ var js:Boolean = false;
+ try {
+ var check:* = getDefinitionByName("flash.system.Capabilities");
+ } catch (e:Error) {
+ js = true;
+ }
+ //if this next reference to 'check' is not included, then the above try/catch code
+ //appears to be optimized away in js-release mode
+ //a separate test has been created for this
+ if (check == null) {
+ js = true;
+ }
+ isJS = js;
+ }
+
+ [AfterClass]
+ public static function tearDownAfterClass():void
+ {
+ }
+
+ [Before]
+ public function setUp():void
+ {
+
+ }
+
+ [After]
+ public function tearDown():void
+ {
+
+ }
+
+
+
+
+ [Test]
+ public function testBasicAlias():void {
+ //no initial alias
+ Assert.assertNull(getAliasByClass(TestClass2));
+ registerClassAlias("fjsTest", TestClass2);
+ //alias is registered
+ Assert.assertEquals("unexpected Alias value","fjsTest",getAliasByClass(TestClass2));
+ //register same alias for another class
+ registerClassAlias("fjsTest", TestClass3);
+ //original alias mapping is deregistered
+ Assert.assertNull(getAliasByClass(TestClass2));
+ //alias is registered for new class
+ Assert.assertEquals("unexpected Alias value","fjsTest",getAliasByClass(TestClass3));
+
+ //class is retrievable by alias
+ Assert.assertEquals("unexpected Class value",TestClass3,getClassByAlias("fjsTest"));
+
+
+ }
+
+
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestUseCache.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestUseCache.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestUseCache.as
new file mode 100644
index 0000000..9722647
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/ReflectionTesterTestUseCache.as
@@ -0,0 +1,93 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection
+{
+ import flexunit.framework.Assert;
+ import flexUnitTests.reflection.support.*;
+ import org.apache.flex.reflection.*;
+
+ public class ReflectionTesterTestUseCache
+ {
+
+ public static var isJS:Boolean;
+ [BeforeClass]
+ public static function setUpBeforeClass():void
+ {
+ var js:Boolean = false;
+ try {
+ var check:* = getDefinitionByName("flash.system.Capabilities");
+ } catch (e:Error) {
+ js = true;
+ }
+ //if this next reference to 'check' is not included, then the above try/catch code
+ //appears to be optimized away in js-release mode
+ //a separate test has been created for this
+ if (check == null) {
+ js = true;
+ }
+ isJS = js;
+ }
+
+ [AfterClass]
+ public static function tearDownAfterClass():void
+ {
+ }
+
+ [Before]
+ public function setUp():void
+ {
+ TypeDefinition.useCache = true;
+ TestClass2.testStaticVar = "testStaticVar_val";
+ TestClass2.testStaticWriteOnly = "staticAccessor_initial_value";
+ }
+
+ [After]
+ public function tearDown():void
+ {
+ TypeDefinition.useCache = false;
+ }
+
+ private static function retrieveItemWithName(collection:Array, name:String):DefinitionBase {
+ var ret:DefinitionBase;
+ var i:uint=0,l:uint=collection.length;
+ for (;i<l;i++) {
+ if (collection[i].name==name) {
+ ret = collection[i];
+ break;
+ }
+ }
+
+ return ret;
+ }
+
+
+ [Test]
+ public function testBasicCache():void {
+ var def:TypeDefinition = describeType(TestClass2);
+
+ var def2:TypeDefinition = describeType(TestClass2);
+
+ Assert.assertEquals("cache not working",def,def2);
+
+ }
+
+
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface.as
new file mode 100644
index 0000000..b5a2249
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface.as
@@ -0,0 +1,27 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+ public interface ITestInterface
+ {
+ function someMethod(compulsoryArg:int, optArg:String=null):TestClass1;
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface2.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface2.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface2.as
new file mode 100644
index 0000000..f69f9b7
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface2.as
@@ -0,0 +1,29 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+ public interface ITestInterface2 extends ITestInterface
+ {
+ function someMethod2(compulsoryArg:int, optArg:String=null):TestClass1;
+
+ function get someValue2():Boolean;
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface3.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface3.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface3.as
new file mode 100644
index 0000000..83d05ee
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface3.as
@@ -0,0 +1,27 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+ public interface ITestInterface3
+ {
+ //empty
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface4.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface4.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface4.as
new file mode 100644
index 0000000..7a032f5
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/ITestInterface4.as
@@ -0,0 +1,29 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+ public interface ITestInterface4 extends ITestInterface2, ITestInterface3
+ {
+ function someMethod3(compulsoryArg:int, optArg:String=null):TestClass1;
+
+ function get someValue3():Boolean;
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass1.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass1.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass1.as
new file mode 100644
index 0000000..76ac834
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass1.as
@@ -0,0 +1,91 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+ import org.apache.flex.reflection.TypeDefinition;
+
+ [RemoteClass(alias="TestClass1_alias")]
+ public class TestClass1 implements ITestInterface
+ {
+ public function TestClass1()
+ {
+ var something:ITestInterface2;
+ }
+
+ [Bindable]
+ [Event(name="foo", type="org.apache.flex.events.Event")]
+ public var bindableVar:String;
+ [Event(name="foo", type="org.apache.flex.events.Event")]
+ public var temp:Boolean;
+
+ public static var tempStatic:Boolean;
+
+ public var typeDef:TypeDefinition;
+
+ public var testVar:String="testVar_val";
+
+ public static var staticTestVar:String="statictestVar_val";
+
+ private var _atestval:String="accessorTest_val";
+ public function get accessorTest():String{
+ return _atestval;
+ }
+
+ public function set accessorTest(val:String):void{
+ _atestval = val;
+ }
+
+ private static var _staticAtestval:String="staticAccessorTest_val";
+ public static function get staticAccessorTest():String{
+ return _staticAtestval;
+ }
+
+ public static function set staticAccessorTest(val:String):void{
+ _staticAtestval = val;
+ }
+
+ [Bindable]
+ public static var bindableStaticVar:String;
+
+ [Bindable]
+ public var bindableInstanceVar:String;
+
+
+ public function someMethod(compulsoryArg:int, optArg:String=null):TestClass1{
+ return null;
+ }
+
+ public static function someStaticMethod(compulsoryArg:int, optArg:String=null):TestClass1{
+ return null;
+ }
+
+ public function get testAccessorType():TypeDefinition {
+ return null;
+ }
+
+ public const instanceConstant:String="instanceConstant_val";
+
+
+ public static const staticConstant:String="staticConstant_val";
+
+
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass2.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass2.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass2.as
new file mode 100644
index 0000000..bcc7988
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass2.as
@@ -0,0 +1,103 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+
+ [TestMeta(foo="class")]
+ public class TestClass2
+ {
+ //Note: do not change this test class unless you change the related tests to
+ //support any changes that might appear when testing reflection into it
+
+ public function TestClass2(blah:String){
+
+ }
+
+
+ [TestMeta(foo="instanceMethod")]
+ public function testMethod():void{
+ _testReadWrite = "testMethod was called";
+ }
+
+ [TestMeta(foo="instanceMethod")]
+ public function testMethodWithArgs(mandatory:String,optional:Boolean=true):Boolean{
+ _testReadWrite = "testMethodWithArgs was called";
+ return optional;
+ }
+
+ [TestMeta(foo="instanceVariable")]
+ public var testVar:String = "testVar_val";
+
+ [TestMeta(foo="instanceAccessor")]
+ public function get testReadOnly():String{
+ return _testReadWrite
+ }
+
+ [TestMeta(foo="instanceAccessor")]
+ public function set testWriteOnly(value:String):void{
+ _testReadWrite=value;
+ }
+
+ [TestMeta(foo="instanceAccessor")]
+ public function get testReadWrite():String{
+ return _testReadWrite
+ }
+ public function set testReadWrite(value:String):void{
+ _testReadWrite=value;
+ }
+
+ [TestMeta(foo="staticMethod")]
+ public static function testStaticMethod():void{
+ _testStaticReadWrite = "testStaticMethod was called";
+ }
+
+ [TestMeta(foo="staticMethod")]
+ public static function testStaticMethodWithArgs(mandatory:String,optional:Boolean=true):Boolean{
+ _testStaticReadWrite = "testStaticMethodWithArgs was called";
+ return optional;
+ }
+
+ [TestMeta(foo="staticVariable")]
+ public static var testStaticVar:String = "testStaticVar_val";
+
+ [TestMeta(foo="staticAccessor")]
+ public static function get testStaticReadOnly():String{
+ return _testStaticReadWrite
+ }
+
+ [TestMeta(foo="staticAccessor")]
+ public static function set testStaticWriteOnly(value:String):void{
+ _testStaticReadWrite = value;
+ }
+
+ [TestMeta(foo="staticAccessor")]
+ public static function get testStaticReadWrite():String{
+ return _testStaticReadWrite;
+ }
+ public static function set testStaticReadWrite(value:String):void{
+ _testStaticReadWrite = value;
+ }
+
+
+
+ private static var _testStaticReadWrite:String = "staticAccessor_initial_value";
+ private var _testReadWrite:String = "instanceAccessor_initial_value";
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass3.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass3.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass3.as
new file mode 100644
index 0000000..0b4c59b
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass3.as
@@ -0,0 +1,39 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+
+
+ public class TestClass3 extends TestClass1 implements ITestInterface2, ITestInterface3
+ {
+
+ public var something:String;
+
+
+ public function someMethod2(compulsoryArg:int, optArg:String=null):TestClass1
+ {
+ return null;
+ }
+
+ public function get someValue2():Boolean {
+ return false;
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass4.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass4.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass4.as
new file mode 100644
index 0000000..5d0a28f
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass4.as
@@ -0,0 +1,95 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+
+
+ public class TestClass4 extends TestClass2
+ {
+ //Note: do not change this test class unless you change the related tests to
+ //support any changes that might appear when testing reflection into it
+
+ public function TestClass4(){
+ super("");
+ }
+
+
+ [TestMeta(foo="instanceMethod")]
+ public function testMethod2():void{
+
+ }
+
+ [TestMeta(foo="instanceMethod")]
+ public function testMethodWithArgs2(mandatory:String,optional:Boolean=true):void{
+
+ }
+
+ [TestMeta(foo="instanceVariable")]
+ public var testVar2:String;
+
+ [TestMeta(foo="instanceAccessor")]
+ public function get testReadonly2():String{
+ return null
+ }
+
+ [TestMeta(foo="instanceAccessor")]
+ public function set testWriteonly2(value:String):void{
+
+ }
+
+ [TestMeta(foo="instanceAccessor")]
+ public function get testReadeWrite2():String{
+ return null
+ }
+ public function set testReadeWrite2(value:String):void{
+
+ }
+
+ [TestMeta(foo="staticMethod")]
+ public static function testStaticMethod():void{
+ }
+
+ [TestMeta(foo="staticMethod")]
+ public static function testStaticMethodWithArgs(mandatory:String,optional:Boolean=true):void{
+ }
+
+ [TestMeta(foo="staticVariable")]
+ public static var testStaticVar:String;
+
+ [TestMeta(foo="staticAccessor")]
+ public static function get testStaticReadonly():String{
+ return null
+ }
+
+ [TestMeta(foo="staticAccessor")]
+ public static function set testStaticWriteonly(value:String):void{
+
+ }
+
+ [TestMeta(foo="staticAccessor")]
+ public static function get testStaticReadeWrite():String{
+ return null
+ }
+ public static function set testStaticReadeWrite(value:String):void{
+
+ }
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass5.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass5.as b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass5.as
new file mode 100644
index 0000000..cc546c7
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexUnitTests/reflection/support/TestClass5.as
@@ -0,0 +1,82 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 flexUnitTests.reflection.support
+{
+
+
+
+ public class TestClass5
+ {
+ //Note: do not change this test class unless you change the related tests to
+ //support any changes that might appear when testing reflection into it
+
+ public function TestClass5(){
+
+ }
+
+
+ [TestMeta(foo="instanceMethod")]
+ public function method():void{
+
+ }
+
+ [TestMeta(foo="instanceMethod")]
+ public function methodWithArgs(mandatory:String,optional:Boolean=true):void{
+
+ }
+
+ [TestMeta(foo="instanceVariable")]
+ public var testVar:String;
+
+ [TestMeta(foo="instanceAccessor")]
+ public function get testGetter():String{
+ return null
+ }
+
+ [TestMeta(foo="instanceAccessor")]
+ public function set testSetter(value:String):void{
+
+ }
+
+
+ [TestMeta(foo="staticMethod")]
+ public static function method():void{
+ }
+
+ [TestMeta(foo="staticMethod")]
+ public static function methodWithArgs(mandatory:String,optional:Boolean=true):void{
+ }
+
+ [TestMeta(foo="staticVariable")]
+ public static var testVar:String;
+
+ [TestMeta(foo="staticAccessor")]
+ public static function get testGetter():String{
+ return null
+ }
+
+ [TestMeta(foo="staticAccessor")]
+ public static function set testSetter(value:String):void{
+
+ }
+
+
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexunit/framework/Assert.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexunit/framework/Assert.as b/manualtests/UnitTests/src/main/flex/flexunit/framework/Assert.as
new file mode 100644
index 0000000..171f695
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexunit/framework/Assert.as
@@ -0,0 +1,305 @@
+/*
+ * 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 flexunit.framework
+{
+ //import flexunit.framework.AssertionFailedError;
+
+ /**
+ * A set of assert methods. Messages are only displayed when an assert fails.
+ */
+ public class Assert
+ {
+ /**
+ * @private
+ */
+ public static var _assertCount:uint = 0;
+
+ /**
+ * Returns the number of assertions that have been made
+ */
+ public static function get assertionsMade() : uint {
+ return _assertCount;
+ }
+
+
+ /**
+ * Resets the count for the number of assertions that have been made back to zero
+ */
+ public static function resetAssertionsFields() : void {
+ _assertCount = 0;
+ }
+
+ /**
+ * @private
+ */
+ public static function assertWithApply( asserter:Function, args:Array ):void {
+ _assertCount++;
+ asserter.apply( null, args );
+ }
+
+ /**
+ * @private
+ */
+ public static function assertWith( asserter:Function, ...rest ):void {
+ _assertCount++;
+ asserter.apply( null, rest );
+ }
+
+ /**
+ * Asserts that two provided values are equal.
+ *
+ * @param asserter The function to use for assertion.
+ * @param rest
+ * Must be passed at least 2 arguments of type Object to compare for equality.
+ * If three arguments are passed, the first argument must be a String
+ * and will be used as the error message.
+ * The first of the comparison arguments represents the expected result
+ * The second is the actual result to compare with the expected result.
+ *
+ * <code>assertEquals( String, Object, Object );</code>
+ * <code>assertEquals( Object, Object );</code>
+ */
+ public static function assertEquals(... rest):void
+ {
+ _assertCount++;
+ if ( rest.length == 3 )
+ failNotEquals( rest[0], rest[1], rest[2] );
+ else
+ failNotEquals( "", rest[0], rest[1] );
+ }
+
+ /**
+ * @private
+ */
+ public static function failNotEquals( message:String, expected:Object, actual:Object ):void
+ {
+ if ( expected != actual )
+ failWithUserMessage( message, "expected:<" + expected + "> but was:<" + actual + ">" );
+ }
+
+ /**
+ * /**
+ * Asserts that the provided values are strictly equal.
+ *
+ * @param rest
+ * Must be passed at least 2 arguments of type Object to compare for strict equality.
+ * If three arguments are passed, the first argument must be a String
+ * and will be used as the error message.
+ * The first of the comparison arguments represents the expected result
+ * The second is the actual result to compare with the expected result.
+ *
+ * <code>assertStrictlyEquals( String, Object, Object );</code>
+ * <code>assertStrictlyEquals( Object, Object );</code>
+ */
+ public static function assertStrictlyEquals(... rest):void
+ {
+ _assertCount++;
+ if ( rest.length == 3 )
+ failNotStrictlyEquals( rest[0], rest[1], rest[2] );
+ else
+ failNotStrictlyEquals( "", rest[0], rest[1] );
+ }
+
+ /**
+ * @private
+ */
+ public static function failNotStrictlyEquals( message:String, expected:Object, actual:Object ):void
+ {
+ if ( expected !== actual )
+ failWithUserMessage( message, "expected:<" + expected + "> but was:<" + actual + ">" );
+ }
+
+ /**
+ * Asserts that a condition is true.
+ *
+ * @param rest
+ * Accepts an argument of type Boolean.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertTrue( String, Boolean );</code>
+ * <code>assertTrue( Boolean );</code>
+ */
+ public static function assertTrue(... rest):void
+ {
+ _assertCount++;
+ if ( rest.length == 2 )
+ failNotTrue( rest[0], rest[1] );
+ else
+ failNotTrue( "", rest[0] );
+ }
+
+ /**
+ * Asserts that a condition is not true.
+ *
+ * @param rest
+ * Accepts an argument of type Boolean.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertTrue( String, Boolean );</code>
+ * <code>assertTrue( Boolean );</code>
+ */
+ public static function failNotTrue( message:String, condition:Boolean ):void
+ {
+ if ( !condition )
+ failWithUserMessage( message, "expected true but was false" );
+ }
+
+ /**
+ * Asserts that a condition is false.
+ *
+ * @param rest
+ * Accepts an argument of type Boolean.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertFalse( String, Boolean );</code>
+ * <code>assertFalse( Boolean );</code>
+ */
+ public static function assertFalse(... rest):void
+ {
+ _assertCount++;
+ if ( rest.length == 2 )
+ failTrue( rest[0], rest[1] );
+ else
+ failTrue( "", rest[0] );
+ }
+
+ /**
+ * Asserts that a condition is false.
+ *
+ * @param rest
+ * Accepts an argument of type Boolean.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertTrue( String, Boolean );</code>
+ * <code>assertTrue( Boolean );</code>
+ */
+ public static function failTrue( message:String, condition:Boolean ):void
+ {
+ if ( condition )
+ failWithUserMessage( message, "expected false but was true" );
+ }
+
+ //TODO: (<code>null</code> okay) needs removal?
+ /**
+ * Asserts that an object is null.
+ *
+ * @param rest
+ * Accepts an argument of type Object.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertNull( String, Object );</code>
+ * <code>assertNull( Object );</code>
+ *
+ */
+ public static function assertNull(... rest):void
+ {
+ _assertCount++;
+ if ( rest.length == 2 )
+ failNotNull( rest[0], rest[1] );
+ else
+ failNotNull( "", rest[0] );
+ }
+
+ /**
+ * Asserts that an object is not null.
+ *
+ * @param rest
+ * Accepts an argument of type Boolean.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertTrue( String, Boolean );</code>
+ * <code>assertTrue( Boolean );</code>
+ */
+ public static function failNull( message:String, object:Object ):void
+ {
+ if ( object == null )
+ failWithUserMessage( message, "object was null: " + object );
+ }
+
+ //TODO: (<code>null</code> okay) needs removal?
+ /**
+ * Asserts that an object is not null.
+ *
+ * @param rest
+ * Accepts an argument of type Object.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertNotNull( String, Object );</code>
+ * <code>assertNotNull( Object );</code>
+ */
+ public static function assertNotNull(... rest):void
+ {
+ _assertCount++;
+ if ( rest.length == 2 )
+ failNull( rest[0], rest[1] );
+ else
+ failNull( "", rest[0] );
+ }
+
+ /**
+ * Asserts that an object is not null.
+ *
+ * @param rest
+ * Accepts an argument of type Boolean.
+ * If two arguments are passed the first argument must be a String
+ * and will be used as the error message.
+ *
+ * <code>assertTrue( String, Boolean );</code>
+ * <code>assertTrue( Boolean );</code>
+ */
+ public static function failNotNull( message:String, object:Object ):void
+ {
+ if ( object != null )
+ failWithUserMessage( message, "object was not null: " + object );
+ }
+ //TODO: (<code>null</code> okay) needs removal?
+ /**
+ * Fails a test with the argument message.
+ *
+ * @param failMessage
+ * the identifying message for the <code> AssertionFailedError</code> (<code>null</code>
+ * okay)
+ * @see AssertionFailedError
+ */
+ public static function fail( failMessage:String = ""):void
+ {
+ var error:AssertionFailedError = new AssertionFailedError(failMessage);
+ //this seems necessary for js:
+ if (error.message!=failMessage) error.message = failMessage;
+ throw error;
+ }
+
+
+ /**
+ * @private
+ */
+ private static function failWithUserMessage( userMessage:String, failMessage:String ):void
+ {
+ if ( userMessage.length > 0 )
+ userMessage = userMessage + " - ";
+ failMessage = userMessage + failMessage;
+ fail(failMessage);
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/flexunit/framework/AssertionFailedError.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/flexunit/framework/AssertionFailedError.as b/manualtests/UnitTests/src/main/flex/flexunit/framework/AssertionFailedError.as
new file mode 100644
index 0000000..359361f
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/flexunit/framework/AssertionFailedError.as
@@ -0,0 +1,39 @@
+/*
+ * 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 flexunit.framework
+{
+ /**
+ * <code>Error</code> class used for failures in assertions
+ *
+ * @see Assert
+ */
+ public class AssertionFailedError extends Error
+ {
+ /**
+ * Throws a new <code>Error</code> of type <code>AssertionError</code>
+ * with the passed in message
+ *
+ * @param message The message associated with the error (<code>null</code> okay)
+ * @param id The id of the error if desired (<code>null</code> okay)
+ */
+ public function AssertionFailedError(message:String="", id:int=0)
+ {
+ super(message, id);
+ }
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/testshim/FlexJSUnitTestRunner.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/testshim/FlexJSUnitTestRunner.as b/manualtests/UnitTests/src/main/flex/testshim/FlexJSUnitTestRunner.as
new file mode 100644
index 0000000..7494963
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/testshim/FlexJSUnitTestRunner.as
@@ -0,0 +1,186 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 testshim {
+
+import org.apache.flex.reflection.MetaDataArgDefinition;
+import org.apache.flex.reflection.MetaDataDefinition;
+import org.apache.flex.reflection.MethodDefinition;
+import org.apache.flex.reflection.TypeDefinition;
+import org.apache.flex.reflection.describeType;
+
+import flexunit.framework.Assert;
+public class FlexJSUnitTestRunner {
+
+
+ public function FlexJSUnitTestRunner(testerClass:Class, notificationReceiver:Function) {
+ this.testerClass = testerClass;
+ this.callback = notificationReceiver;
+ prepare();
+ }
+
+ private var testerClass:Class;
+ private var callback:Function;
+
+ private var _testingName:String;
+ public function get testingName():String{
+ return _testingName;
+ }
+ private var _successCount:uint=0;
+ public function get successCount():uint {
+ return _successCount;
+ }
+
+ private var _failCount:uint=0;
+ public function get failCount():uint {
+ return _failCount;
+ }
+
+ private var _successfulAssertions:uint=0;
+ public function get successfulAssertions():uint {
+ return _successfulAssertions;
+ }
+
+ private var beforeClassFunc:Function;
+ private var afterClassFunc:Function;
+ private var setupFunc:MethodDefinition;
+ private var tearDownFunc:MethodDefinition;
+
+ private var testMethods:Array=[];
+
+ private function prepare():void{
+ var typeDef:TypeDefinition = describeType(testerClass);
+ _testingName = typeDef.name;
+ var staticMethods:Array = typeDef.staticMethods;
+ for each (var methodDef:MethodDefinition in staticMethods) {
+ var beforeClass:Array = methodDef.retrieveMetaDataByName("BeforeClass");
+ var afterClass:Array = methodDef.retrieveMetaDataByName("AfterClass");
+ if ( beforeClass.length ) {
+ if (beforeClassFunc!=null) throw new Error("BeforeClass used more than once in "+typeDef.qualifiedName);
+ beforeClassFunc = testerClass[methodDef.name];
+ }
+ if ( afterClass.length ) {
+ if (afterClassFunc!=null) throw new Error("AfterClass used more than once in "+typeDef.qualifiedName);
+ afterClassFunc = testerClass[methodDef.name];
+ }
+ }
+ var methods:Array = typeDef.methods;
+ for each (methodDef in methods) {
+ var beforeTests:Array = methodDef.retrieveMetaDataByName("Before");
+ var afterTests:Array = methodDef.retrieveMetaDataByName("After");
+ if ( beforeTests.length ) {
+ if (setupFunc!=null) throw new Error("Before used more than once in "+typeDef.qualifiedName);
+ setupFunc = methodDef;
+ }
+ if ( afterTests.length ) {
+ if (tearDownFunc!=null) throw new Error("After used more than once in "+typeDef.qualifiedName);
+ tearDownFunc = methodDef;
+ }
+ var test:Array = methodDef.retrieveMetaDataByName("Test");
+ if (test.length) {
+ testMethods.push(methodDef);
+ }
+ testMethods.sortOn("name");
+ }
+
+ if (testMethods.length == 0) {
+ throw new Error("Zero test methods detected in "+typeDef.qualifiedName+", check to make sure -keep-as3-metadata is configured");
+ }
+ }
+
+ private function begin():void {
+ if (beforeClassFunc!=null) beforeClassFunc();
+ }
+
+ public function runTests():void{
+ begin();
+ var testInstance:Object = new testerClass();
+ if (setupFunc!=null) {
+ testInstance[setupFunc.name]();
+ }
+ var i:uint=0, l:uint=testMethods.length;
+
+ for(;i<l;i++) {
+ runFlexJSTest(_testingName,testInstance,testMethods[i],callback);
+ }
+
+ if (tearDownFunc!=null) {
+ testInstance[tearDownFunc.name]();
+ }
+ end();
+ }
+
+ private function end():void{
+ if (afterClassFunc!=null) afterClassFunc();
+ }
+
+
+ private function runFlexJSTest(testClass:String,instance:Object,methodDef:MethodDefinition,callback:Function=null):void{
+ var methodName:String = methodDef.name;
+ trace('running test in '+testClass+":"+methodName);
+ var varianceMetas:Array = methodDef.retrieveMetaDataByName("TestVariance");
+
+ var method:Function = instance[methodName];
+ var preAssertCount:uint = Assert.assertionsMade;
+ var result:TestResult = new TestResult();
+ result.assertions = 0;
+ result.pass = true;
+ result.error = null;
+ result.testClass = testClass;
+ result.testMethod = methodName;
+
+ while (varianceMetas.length) {
+ var varianceMeta:MetaDataDefinition = varianceMetas.shift();
+ var varianceArgs:Array = varianceMeta.getArgsByKey("variance");
+ var i:uint=0, l:uint= varianceArgs.length;
+ if (l) {
+ result.hasVariance=true;
+ for(;i<l;i++) varianceArgs[i] = varianceArgs[i].value;
+ result.varianceTarget = varianceArgs.join(",");
+ }
+ if (result.hasVariance) {
+ var descriptionArgs:Array= varianceMeta.getArgsByKey("description");
+ if (descriptionArgs.length) result.varianceDescription = "";
+ while(descriptionArgs.length) {
+ var description:MetaDataArgDefinition = descriptionArgs.shift();
+ result.varianceDescription +=description.value;
+ if (descriptionArgs.length) result.varianceDescription += ", ";
+ }
+ }
+ }
+ //run the test method
+ try {
+ method();
+ } catch (e:Error) {
+ result.pass=false;
+ result.error = e.name+":" + e.message;
+ }
+ result.assertions = Assert.assertionsMade - preAssertCount;
+ if (preAssertCount == Assert.assertionsMade) {
+ result.warning = "WARNING: This test method appears to have zero Assertions";
+ }
+ if (result.pass) _successCount++;
+ else _failCount++;
+ _successfulAssertions += result.assertions;
+ if (callback!=null) {
+ callback(result);
+ }
+ }
+
+}
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/src/main/flex/testshim/TestResult.as
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/src/main/flex/testshim/TestResult.as b/manualtests/UnitTests/src/main/flex/testshim/TestResult.as
new file mode 100644
index 0000000..d9bc514
--- /dev/null
+++ b/manualtests/UnitTests/src/main/flex/testshim/TestResult.as
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 testshim {
+public class TestResult {
+ public function TestResult() {
+ }
+
+ public var testClass:String;
+
+ public var testMethod:String;
+
+ public var pass:Boolean;
+
+ public var assertions:uint;
+
+ public var error:String;
+
+ public var hasVariance:Boolean;
+
+ public var varianceTarget:String;
+
+ public var varianceDescription:String;
+
+ public var warning:String;
+
+ public function toString(newline:String=null):String {
+ if (newline==null) newline="\n";
+ var s:String="";
+ var postFix:String = testMethod+" in "+testClass;
+ if (pass) {
+ s += "PASSED ("+assertions+" assertions made) ["+postFix+"]";
+ } else {
+ s += "FAILED ( at assertion "+assertions+" in test method) ["+postFix+"]"+newline;
+ s += "["+error+"]";
+ }
+ return s;
+ }
+
+}
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/testsview/image/Flex.png
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/testsview/image/Flex.png b/manualtests/UnitTests/testsview/image/Flex.png
new file mode 100644
index 0000000..cb68fec
Binary files /dev/null and b/manualtests/UnitTests/testsview/image/Flex.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/UnitTests/testsview/index.html
----------------------------------------------------------------------
diff --git a/manualtests/UnitTests/testsview/index.html b/manualtests/UnitTests/testsview/index.html
new file mode 100644
index 0000000..3007ab8
--- /dev/null
+++ b/manualtests/UnitTests/testsview/index.html
@@ -0,0 +1,129 @@
+<!--
+ 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.
+-->
+<!DOCTYPE html>
+<html>
+<head>
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <style>
+ .boxLeft {
+ display:inline-block;
+ width:50% ;
+ position:absolute;
+ top:100px;
+ bottom:15px;
+ left:0px
+ }
+ .boxRight {
+ display:inline-block;
+ width:50% ;
+ position:absolute;
+ top:100px;
+ bottom:15px;
+ right:0px
+ }
+ .pageStyles {
+ font-family: Arial,sans-serif;
+ color: #333;
+ background: #f5f5f5;
+ font-size: 14px;
+ line-height: 1.5;
+ }
+ h1 {
+ font-size: 28px;
+ line-height: 1.25;
+ font-weight: normal;
+ }
+ em {
+ font-weight: bold;
+ }
+ .logo {
+ margin-right: 10px;
+ float: left;
+ width: 48px;
+ height: 48px;
+ border-radius: 50%;
+ border: 0;
+ margin: 0;
+ padding: 0;
+ }
+ .titleContent {
+ white-space:nowrap;
+ }
+ </style>
+ <script type="text/javascript">
+
+ console.API;
+
+ if (typeof console._commandLineAPI !== 'undefined') {
+ console.API = console._commandLineAPI; //chrome
+ } else if (typeof console._inspectorCommandLineAPI !== 'undefined') {
+ console.API = console._inspectorCommandLineAPI; //Safari
+ } else if (typeof console.clear !== 'undefined') {
+ console.API = console;
+ }
+
+ function swapJSBuild() {
+ var button = document.getElementById("swapJsButton");
+ var JS_RELEASE = "JS-Release";
+ var JS_DEBUG = "JS-Debug";
+ var SWAP_TO_RELEASE = "Swap To "+JS_RELEASE;
+ var SWAP_TO_DEBUG = "Swap To "+JS_DEBUG;
+ var base = "../target/javascript/bin";
+ var debug = base + "/js-debug/index.html";
+ var release = base + "/js-release/index.html";
+ var jsIframe = document.getElementById("jsIframe");
+ var status = document.getElementById("jsStatus");
+ if (button && jsIframe) {
+ var current = button.innerHTML;
+ switch (current) {
+ case SWAP_TO_RELEASE:
+ console.API.clear();
+ button.innerHTML = SWAP_TO_DEBUG;
+ jsIframe.src = release;
+ status.innerHTML = "Currently showing <em>"+JS_RELEASE+"</em>";;
+ break;
+ case SWAP_TO_DEBUG:
+ console.API.clear();
+ button.innerHTML = SWAP_TO_RELEASE;
+ jsIframe.src = debug;
+ status.innerHTML = "Currently showing <em>"+JS_DEBUG+"</em>";
+ break;
+ }
+ }
+ }
+ </script>
+</head>
+<body class="pageStyles">
+ <div>
+ <div >
+ <img class="logo" src="image/Flex.png" alt="Apache Flex logo">
+ <div class="titleContent">
+ <h1>FlexJS Framework Development Unit Tests</h1>
+ </div>
+ <div id="jsStatus" style="position: relative; display: inline-block;">Currently showing <em>JS-Debug</em></div>
+ <button id="swapJsButton" onclick="swapJSBuild()" type="button" class="quoteButton TextButton" style="position: relative; display: inline-block;">Swap To JS-Release</button>
+ </div>
+ <div class="boxLeft">
+ <iframe id="jsIframe" src="../target/javascript/bin/js-debug/index.html" frameborder="1" scrolling="no" height="100%" width="100%" align="left" ></iframe>
+ </div>
+ <div class="boxRight">
+ <iframe id="swfIframe" src="../target/bin-debug/UnitTests.html" frameborder="1" scrolling="no" height="100%" width="100%" align="left" ></iframe>
+ </div>
+ </div>
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/523eac21/manualtests/XMLTest/build.xml
----------------------------------------------------------------------
diff --git a/manualtests/XMLTest/build.xml b/manualtests/XMLTest/build.xml
index a3012b2..c811bba 100644
--- a/manualtests/XMLTest/build.xml
+++ b/manualtests/XMLTest/build.xml
@@ -22,52 +22,26 @@
<project name="xmltest" default="main" basedir=".">
<property name="FLEXJS_HOME" location="../.."/>
<property name="example" value="XMLTest" />
+ <!-- use this to add keep metadata option -->
+ <property name="theme_arg" value="-keep-as3-metadata+=Event" />
<property name="swf.version" value="11" />
+ <property file="${FLEXJS_HOME}/env.properties"/>
<property environment="env"/>
- <property file="${FLEXJS_HOME}/build.properties"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
<property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
- <!-- use this to add keep metadata option -->
- <property name="theme_arg" value="-keep-as3-metadata+=Event" />
- <available file="${env.FALCON_HOME}/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${env.FALCON_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk/lib/falcon-mxmlc.jar"
- type="file"
- property="FALCON_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler/generated/dist/sdk"/>
-
- <available file="${env.FALCONJX_HOME}/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${env.FALCONJX_HOME}"/>
-
- <available file="${FLEXJS_HOME}/../flex-falcon/compiler-jx/lib/jsc.jar"
- type="file"
- property="FALCONJX_HOME"
- value="${FLEXJS_HOME}/../flex-falcon/compiler-jx"/>
-
- <available file="${env.GOOG_HOME}/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${env.GOOG_HOME}"/>
-
- <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js"
- type="file"
- property="GOOG_HOME"
- value="${FLEXJS_HOME}/js/lib/google/closure-library"/>
+
<include file="${basedir}/../build_example.xml" />
- <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of FlexJSUI.swc">
+ <target name="main" depends="clean,build_example.compile" description="Clean build of ${example}">
</target>
<target name="clean">
<delete dir="${basedir}/bin" failonerror="false" />
<delete dir="${basedir}/bin-debug" failonerror="false" />
<delete dir="${basedir}/bin-release" failonerror="false" />
+ <delete dir="${basedir}/target" failonerror="false" />
</target>
</project>