Current SVN head (r269) does not build on my machine (note that I've
had to apply patch below for build.xml to honor FLEX_HOME environment
variable).
Here is the build log:
$ ant
Buildfile: build.xml
clean:
clean:
[delete] Deleting directory /users/agladysh/projects/fluint/fluint/target
clean:
[delete] Deleting directory
/users/agladysh/projects/fluint/airtestrunner/target
clean:
fluint:
init:
[mkdir] Created dir: /users/agladysh/projects/fluint/fluint/target
[mkdir] Created dir: /users/agladysh/projects/fluint/fluint/target/classes
[mkdir] Created dir:
/users/agladysh/projects/fluint/fluint/target/test-classes
[mkdir] Created dir: /users/agladysh/projects/fluint/fluint/target/report
[mkdir] Created dir: /users/agladysh/projects/fluint/fluint/target/doc
build:
[java] Loading configuration file
/Users/agladysh/flex_sdk_3/frameworks/flex-config.xml
[java] /Users/agladysh/projects/fluint/fluint/target/classes/fluint.swc
(63018 bytes)
package:
[java] Loading configuration file
/Users/agladysh/flex_sdk_3/frameworks/flex-config.xml
[java]
[java]
[java]
[java]
[java]
[java] Documentation was created in
/users/agladysh/projects/fluint/fluint/target/doc/
[copy] Copying 1 file to /users/agladysh/projects/fluint/fluint/target
airtestrunner:
[copy] Copying 1 file to /users/agladysh/projects/fluint/airtestrunner/libs
init:
[mkdir] Created dir: /users/agladysh/projects/fluint/airtestrunner/target
[mkdir] Created dir:
/users/agladysh/projects/fluint/airtestrunner/target/classes
[mkdir] Created dir:
/users/agladysh/projects/fluint/airtestrunner/target/doc
build:
[java] Loading configuration file
/Users/agladysh/flex_sdk_3/frameworks/air-config.xml
[java] /Users/agladysh/projects/fluint/airtestrunner/src/main/flex/net/digitalprimates/fluintairrunner/TestRunnerWindow.as(99):
col: 24 Error: Implicit coercion of a value of type
net.digitalprimates.fluint.ui:TestRunner to an unrelated type
flash.display:DisplayObject.
[java]
[java] this.addChild(testRunner);
[java] ^
[java]
BUILD FAILED
/users/agladysh/projects/fluint/build.xml:51: The following error
occurred while executing this line:
/users/agladysh/projects/fluint/airtestrunner/build.xml:33: Java returned: 1
Total time: 21 seconds
What am I missing?
Alexander.
diff --git a/build.xml b/build.xml
index 513c5d6..0f7e7a9 100644
--- a/build.xml
+++ b/build.xml
@@ -1,7 +1,19 @@
<project name="fluint" basedir="." default="package">
<!-- User defined properties -->
- <property name="flex.home" location="/Applications/Adobe Flex
Builder 3/sdks/3.2.0" />
+ <property environment="env"/>
+ <property name="flex.home" location="${env.FLEX_HOME}" />
+ <fail>
+ <condition>
+ <not>
+ <isset property="env.FLEX_HOME" />
+ </not>
+ </condition>
+ Error!
+ You need to set FLEX_HOME environment variable (path to Flex SDK)
+ export FLEX_HOME=/Applications/Adobe\ Flex\ Builder\ 3/sdks/3.2.0
+ </fail>
+
<property name="fluint.testrunner"
location="/Applications/FluintAIRTestRunner.app/Contents/MacOS/FluintAIRTestRunner"
/>
<property name="cert.loc" location="${basedir}/cert.p12" />
<property name="cert.password" value="password" />
So, it appears that the fluint.swc was successfully built, and errors
were related to other targets.
However, when I link fluint.swc to my swf instead of version 1.1.1, I
get a runtime error (error message is unfortunately in Russian, so the
translation may be inexact):
TypeError: Error #1009: Can't call property or method with null reference
at net.digitalprimates.fluint.ui::TestProgressBar/rebuildProgressBar()[/
Users/agladysh/projects/fluint/fluint/src/main/flex/net/digitalprimates/fluint/u
i/TestProgressBar.as:312]
at net.digitalprimates.fluint.ui::TestProgressBar/updateDisplayList()[/U
sers/agladysh/projects/fluint/fluint/src/main/flex/net/digitalprimates/fluint/ui
/TestProgressBar.as:272]
at mx.core::UIComponent/validateDisplayList()[C:\autobuild\3.2.0\framewo
rks\projects\framework\src\mx\core\UIComponent.as:6351]
at mx.core::Container/validateDisplayList()[C:\autobuild\3.2.0\framework
s\projects\framework\src\mx\core\Container.as:2677]
at mx.managers::LayoutManager/validateDisplayList()[C:\autobuild\3.2.0\f
rameworks\projects\framework\src\mx\managers\LayoutManager.as:622]
at mx.managers::LayoutManager/doPhasedInstantiation()[C:\autobuild\3.2.0
\frameworks\projects\framework\src\mx\managers\LayoutManager.as:677]
at Function/http://adobe.com/AS3/2006/builtin::apply()
at mx.core::UIComponent/callLaterDispatcher2()[C:\autobuild\3.2.0\framew
orks\projects\framework\src\mx\core\UIComponent.as:8628]
at mx.core::UIComponent/callLaterDispatcher()[C:\autobuild\3.2.0\framewo
rks\projects\framework\src\mx\core\UIComponent.as:8568]
The same code with version 1.1.1 works fine.
Perhaps I should change something in my code?
I, of course, could just paste that getTests() into the TestCase class
and be done with it, but I'd like to avoid using custom modified code.
When the next release of fluint is planned?
Alexander.