You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by er...@apache.org on 2013/04/09 17:07:59 UTC

[2/2] git commit: [FalconJX] made FlexJS MXML tests pass

[FalconJX] made FlexJS MXML tests pass

Changed code to make the FlexJS MXML tests pass. Changes concern mainly indentation and a minor changes to the reference files to bring them inline with required JS output.

Signed-off-by: Erik de Bruin <er...@ixsoftware.nl>


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/0eb72d8b
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/0eb72d8b
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/0eb72d8b

Branch: refs/heads/develop
Commit: 0eb72d8bcf06a79722064c560cd1de0f93b11576
Parents: d9e8fea
Author: Erik de Bruin <er...@ixsoftware.nl>
Authored: Tue Apr 9 17:07:24 2013 +0200
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Tue Apr 9 17:07:24 2013 +0200

----------------------------------------------------------------------
 .../mxml/flexjs/TestFlexJSMXMLApplication.java     |    3 --
 .../compiler/internal/test/FlexJSTestBase.java     |    2 +-
 .../flexjs/files/FlexJSTest_2013_03_11_result.js   |    5 ++-
 .../files/MyInitialView_2013_03_11_result.js       |   19 ++++++++------
 .../codegen/mxml/flexjs/MXMLFlexJSEmitter.java     |   20 ++++++++------
 5 files changed, 26 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/0eb72d8b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLApplication.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLApplication.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLApplication.java
index 998b738..ddf143b 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLApplication.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLApplication.java
@@ -2,13 +2,11 @@ package org.apache.flex.compiler.internal.codegen.mxml.flexjs;
 
 import org.apache.flex.compiler.internal.test.FlexJSTestBase;
 import org.apache.flex.compiler.tree.mxml.IMXMLFileNode;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class TestFlexJSMXMLApplication extends FlexJSTestBase
 {
 
-    @Ignore
     @Test
     public void testFlexJSMainFile()
     {
@@ -24,7 +22,6 @@ public class TestFlexJSMXMLApplication extends FlexJSTestBase
         assertOut(getCodeFromFile(fileName + "_result", true, "flexjs/files"));
     }
 
-    @Ignore
     @Test
     public void testFlexJSInitialViewFile()
     {

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/0eb72d8b/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/FlexJSTestBase.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/FlexJSTestBase.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/FlexJSTestBase.java
index 3eb5626..49913ce 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/FlexJSTestBase.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/FlexJSTestBase.java
@@ -58,7 +58,7 @@ public class FlexJSTestBase extends TestBase
     @Override
     protected void addSourcePaths(List<File> sourcePaths)
     {
-        sourcePaths.add(new File(env.ASJS + "/examples/FlexJSTest_again"));
+        sourcePaths.add(new File(env.ASJS + "/examples/FlexJSTest_again/src"));
         sourcePaths.add(new File(FilenameNormalization.normalize("test-files/flexjs/files")));
 
         super.addSourcePaths(sourcePaths);

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/0eb72d8b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js
index 4adc866..9c019fc 100644
--- a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js
@@ -82,11 +82,12 @@ goog.inherits(FlexJSTest_2013_03_11, org.apache.flex.core.Application);
 /**
  * @this {FlexJSTest_2013_03_11}
  * @expose
- * @param {flash.events.Event} event
+ * @param {org.apache.flex.events.Event} event
  */
 FlexJSTest_2013_03_11.prototype.$EH0 = function(event)
 {
-	this.model.set_labelText('Hello World');
+	var self = this;
+	this.model/** Cast to models.MyModel */.set_labelText('Hello World');
 };
 
 /**

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/0eb72d8b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js
index ae82674..dc1f4dc 100644
--- a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js
@@ -133,7 +133,7 @@ goog.inherits(MyInitialView_2013_03_11, org.apache.flex.core.ViewBase);
  */
 MyInitialView_2013_03_11.prototype.get_symbol = function() {
 	var self = this;
-	return this.list.get_selectedItem();
+	return (is(self.list.get_selectedItem(), String) ? self.list.get_selectedItem() : null);
 };
 
 /**
@@ -141,37 +141,40 @@ MyInitialView_2013_03_11.prototype.get_symbol = function() {
  */
 MyInitialView_2013_03_11.prototype.get_inputText = function() {
 	var self = this;
-	return this.input.get_text();
+	return self.input.get_text();
 };
 
 /**
  * @this {MyInitialView_2013_03_11}
  * @expose
- * @param {flash.events.MouseEvent} event
+ * @param {org.apache.flex.events.Event} event
  */
 MyInitialView_2013_03_11.prototype.$EH0 = function(event)
 {
-	this.dispatchEvent(org.apache.flex.FlexGlobal.newObject(flash.events.Event, ["buttonClicked"]));
+	var self = this;
+	this.dispatchEvent(new flash.events.Event('buttonClicked'));
 };
 
 /**
  * @this {MyInitialView_2013_03_11}
  * @expose
- * @param {flash.events.Event} event
+ * @param {org.apache.flex.events.Event} event
  */
 MyInitialView_2013_03_11.prototype.$EH1 = function(event)
 {
-	this.dispatchEvent(org.apache.flex.FlexGlobal.newObject(flash.events.Event, ["listChanged"]));
+	var self = this;
+	this.dispatchEvent(new flash.events.Event('listChanged'));
 };
 
 /**
  * @this {MyInitialView_2013_03_11}
  * @expose
- * @param {flash.events.MouseEvent} event
+ * @param {org.apache.flex.events.Event} event
  */
 MyInitialView_2013_03_11.prototype.$EH2 = function(event)
 {
-	this.dispatchEvent(org.apache.flex.FlexGlobal.newObject(flash.events.Event, ["transferClicked"]));
+	var self = this;
+	this.dispatchEvent(new flash.events.Event('transferClicked'));
 };
 
 /**

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/0eb72d8b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
index 5db7405..0531278 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
@@ -123,8 +123,9 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
         write(ASEmitterTokens.FUNCTION);
         write(ASEmitterTokens.PAREN_OPEN);
         writeToken(ASEmitterTokens.PAREN_CLOSE);
-        indentPush();
-        writeNewline(ASEmitterTokens.BLOCK_OPEN);
+        if (!isMainFile)
+            indentPush();
+        writeNewline(ASEmitterTokens.BLOCK_OPEN, true);
         write(JSGoogEmitterTokens.GOOG_BASE);
         write(ASEmitterTokens.PAREN_OPEN);
         write(ASEmitterTokens.THIS);
@@ -184,14 +185,13 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
             writeNewline(" */");
             writeNewline(cname
                     + ".prototype." + event.eventHandler + " = function(event)");
-            indentPush();
-            writeNewline("{");
-            indentPop();
+            writeNewline(ASEmitterTokens.BLOCK_OPEN, true);
 
             writeNewline("var self = this;");
-            writeNewline(event.value + ASEmitterTokens.SEMICOLON.getToken());
+            writeNewline(event.value + ASEmitterTokens.SEMICOLON.getToken(), false);
 
-            writeNewline("};");
+            write(ASEmitterTokens.BLOCK_CLOSE);
+            writeNewline(";");
             writeNewline();
         }
 
@@ -309,7 +309,7 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
         writeNewline("this.mxmldp = data;");
         writeNewline("}");
         indentPop();
-        writeNewline("return this.mxmldp;");
+        writeNewline("return this.mxmldp;", false);
         writeNewline("};");
     }
 
@@ -332,6 +332,8 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
         IASEmitter asEmitter = ((IMXMLBlockWalker) getMXMLWalker())
                 .getASEmitter();
 
+        String indent = getIndent(getCurrentIndent());
+        
         StringBuilder sb = null;
         int len = node.getChildCount();
         if (len > 0)
@@ -339,7 +341,7 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
             sb = new StringBuilder();
             for (int i = 0; i < len; i++)
             {
-                sb.append(asEmitter.stringifyNode(node.getChild(i)));
+                sb.append(indent + asEmitter.stringifyNode(node.getChild(i)));
                 if (i < len - 1)
                 {
                     sb.append(ASEmitterTokens.SEMICOLON.getToken());