You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(58) |
Dec
(4) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(23) |
Feb
(3) |
Mar
(6) |
Apr
(4) |
May
(15) |
Jun
(22) |
Jul
(18) |
Aug
(3) |
Sep
(25) |
Oct
(7) |
Nov
(86) |
Dec
(9) |
2006 |
Jan
(20) |
Feb
(44) |
Mar
(59) |
Apr
(23) |
May
(37) |
Jun
(35) |
Jul
|
Aug
(2) |
Sep
(3) |
Oct
(21) |
Nov
(17) |
Dec
(22) |
2007 |
Jan
(13) |
Feb
(7) |
Mar
(1) |
Apr
(13) |
May
(4) |
Jun
(2) |
Jul
(5) |
Aug
(8) |
Sep
(13) |
Oct
(22) |
Nov
(3) |
Dec
|
2008 |
Jan
(2) |
Feb
(3) |
Mar
(1) |
Apr
(3) |
May
|
Jun
(2) |
Jul
(34) |
Aug
(10) |
Sep
(5) |
Oct
(6) |
Nov
(8) |
Dec
|
2009 |
Jan
(1) |
Feb
(10) |
Mar
(4) |
Apr
(12) |
May
(10) |
Jun
(27) |
Jul
|
Aug
(1) |
Sep
(3) |
Oct
|
Nov
(6) |
Dec
(1) |
2010 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(2) |
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Luke B. <lb...@pa...> - 2011-03-18 15:18:27
|
Thanks Ian, I missed this... Hey XPol, Sorry about not getting back to you on this. Please let us know if you have any more questions and I'll try to keep a closer eye on this list in the future. Thanks, Luke On Mon, Mar 14, 2011 at 5:09 AM, Xpol Wan <xp...@gm...> wrote: > Thanks Lan, > > I managed to run the asuint.exe on a Windows XP machine. > And then i copied the generated code, it works. > > > Best Regards! > > Xpol Wan > > > On Mon, Mar 14, 2011 at 6:23 PM, Ian Tyrrell <Ia...@mo...> wrote: >> >> Hi Xpol, >> >> >> >> 1) Download the framework release from github: >> >> http://github.com/lukebayes/asunit/zipball/release >> >> 2) Unzip >> >> 3) Create a new as2 project in FlashDevelop >> >> 4) Add the /as25/src directory to your classpath >> >> · For Global: Tools -> Global Classpaths… (Ctrl+F9) >> >> · For Project: Project -> Properties… -> Classpaths >> >> 5) For the purpose of this example add the /as25/test directory to >> your project classpath (as above) >> >> 6) Edit the entry point (public static main) in Main.as : >> >> >> >> public static function main(swfRoot:MovieClip):Void { >> >> var testRunner:TestRunner = new TestRunner(swfRoot); >> >> testRunner.start(AllTests); >> >> } >> >> >> >> 7) Test the Movie: Project -> Test Movie (F5) >> >> >> >> You should see the graphic test runner UI, 47 tests should pass. >> >> >> >> Look at AllTests for an idea of how to create TestSuites. >> >> >> >> The tutorials listed on the AsUnit website (Getting Started with AsUnit) >> will give you more details. >> >> >> >> Thanks, >> >> >> >> Ian Tyrrell >> >> ________________________________ > > ------------------------------------------------------------------------------ > Colocation vs. Managed Hosting > A question and answer guide to determining the best fit > for your organization - today and in the future. > http://p.sf.net/sfu/internap-sfd2d > _______________________________________________ > Asunit-users mailing list > Asu...@li... > https://lists.sourceforge.net/lists/listinfo/asunit-users > > |
From: Xpol W. <xp...@gm...> - 2011-03-14 12:09:37
|
Thanks Lan, I managed to run the asuint.exe on a Windows XP machine. And then i copied the generated code, it works. Best Regards! Xpol Wan On Mon, Mar 14, 2011 at 6:23 PM, Ian Tyrrell <Ia...@mo...> wrote: > Hi Xpol, > > > > 1) Download the framework release from github: > > http://github.com/lukebayes/asunit/zipball/release > > 2) Unzip > > 3) Create a new as2 project in FlashDevelop > > 4) Add the /as25/src directory to your classpath > > · For Global: Tools -> Global Classpaths… (Ctrl+F9) > > · For Project: Project -> Properties… -> Classpaths > > 5) For the purpose of this example add the /as25/test directory to > your project classpath (as above) > > 6) Edit the entry point (public static main) in Main.as : > > > > public static function main(swfRoot:MovieClip):Void { > > var testRunner:TestRunner = new TestRunner(swfRoot); > > testRunner.start(AllTests); > > } > > > > 7) Test the Movie: Project -> Test Movie (F5) > > > > You should see the graphic test runner UI, 47 tests should pass. > > > > Look at AllTests for an idea of how to create TestSuites. > > > > The tutorials listed on the AsUnit website (Getting Started with AsUnit) > will give you more details. > > > > Thanks, > > > > Ian Tyrrell > ------------------------------ > > |
From: Ian T. <Ia...@mo...> - 2011-03-14 10:36:16
|
Hi Xpol, 1) Download the framework release from github: http://github.com/lukebayes/asunit/zipball/release 2) Unzip 3) Create a new as2 project in FlashDevelop 4) Add the /as25/src directory to your classpath * For Global: Tools -> Global Classpaths... (Ctrl+F9) * For Project: Project -> Properties... -> Classpaths 5) For the purpose of this example add the /as25/test directory to your project classpath (as above) 6) Edit the entry point (public static main) in Main.as : public static function main(swfRoot:MovieClip):Void { var testRunner:TestRunner = new TestRunner(swfRoot); testRunner.start(AllTests); } 7) Test the Movie: Project -> Test Movie (F5) You should see the graphic test runner UI, 47 tests should pass. Look at AllTests for an idea of how to create TestSuites. The tutorials listed on the AsUnit website (Getting Started with AsUnit) will give you more details. Thanks, Ian Tyrrell ________________________________ From: Xpol Wan [mailto:xp...@gm...] Sent: 14 March 2011 04:09 To: asu...@li... Subject: Re: [Asunit-users] Is there any start up guide for current stable release? Hi, Is any one who can help with this please? I needs to setup with asunit as2.5 flashdevelop. Thanks! Best Regards! Xpol Wan On Fri, Mar 11, 2011 at 10:43 AM, Xpol Wan <xp...@gm...<mailto:xp...@gm...>> wrote: Hi, I'm new here. I'm using current stable release form for a as2 project. But i found that the guide listed on http://asunit.org/ out of date. I can only found this page: http://www.flashcodersny.org/wordpress/?p=103 Which use a msi installer which was created 2007. And the installed asuint.exe seems does not work on Windows 7. My question is how can i setup a as2 (or as2.5) project using asuint and FlashDevelop. Best Regards! Xpol Wan |
From: Xpol W. <xp...@gm...> - 2011-03-14 04:09:10
|
Hi, Is any one who can help with this please? I needs to setup with asunit as2.5 flashdevelop. Thanks! Best Regards! Xpol Wan On Fri, Mar 11, 2011 at 10:43 AM, Xpol Wan <xp...@gm...> wrote: > Hi, > I'm new here. > > I'm using current stable release form for a as2 project. > > But i found that the guide listed on http://asunit.org/ out of date. > I can only found this page: http://www.flashcodersny.org/wordpress/?p=103 > Which use a msi installer which was created 2007. And the installed > asuint.exe seems does not work on Windows 7. > > My question is how can i setup a as2 (or as2.5) project using asuint and > FlashDevelop. > > Best Regards! > > Xpol Wan > |
From: Xpol W. <xp...@gm...> - 2011-03-11 02:43:58
|
Hi, I'm new here. I'm using current stable release form for a as2 project. But i found that the guide listed on http://asunit.org/ out of date. I can only found this page: http://www.flashcodersny.org/wordpress/?p=103 Which use a msi installer which was created 2007. And the installed asuint.exe seems does not work on Windows 7. My question is how can i setup a as2 (or as2.5) project using asuint and FlashDevelop. Best Regards! Xpol Wan |
From: Luke B. <lb...@pa...> - 2010-09-10 15:50:12
|
Hey Raimundas, You're absolutely correct, and I couldn't agree more. Unfortunately, we built AsUnit directly from JUnit in early 2004. This was the interface that Kent Beck used, and we stuck with it assuming there were good reasons. Over the years, I've come to agree with your position and would love to see an improved Assertion class. We were considering fixing this in AsUnit 4, but got stuck behind inertia with the idea of backwards compatibility. The easiest fix I've seen for AsUnit 4, would be to simply create a new Assert class and then users could choose to import that one instead of the default one. Maybe asunit.framework.CleanAssert? I keep struggling to come up with a name that makes sense.... http://github.com/patternpark/asunit/blob/master/asunit-4.0/src/asunit/framework/Assert.as If you can suggest some new names (or other ideas), we're definitely open. If we can land on a solution, we would also welcome any pull requests from Github. http://github.com/patternpark/asunit/tree/master/asunit-4.0 Thanks! Luke Bayes |
From: Raimundas B. <rai...@ya...> - 2010-09-05 19:07:20
|
Hello everyone, I am getting into unit testing in flash, very exited about it! First thing that bugs me is... why ... args:Array in asserts? why not... : /** * Asserts that a condition is true. If it isn't it throws * an AssertionFailedError with the given message. */ static public function assertTrue_lite(condition:*, message:String = ""):void { if (!Boolean(condition)){ fail(message); } } I mean... it makes perfect sense to me. (yes I know its not the same function.. ) but putting Optional argument first - then required one is not normal... and I wont even start about ways to misuse this function because of not clear and counter intuitive arguments. I am new to the subject.. maybe I don't know something.. Thank you for your time. Raimundas Banevicius |
From: Luke B. <lb...@pa...> - 2010-03-29 06:46:57
|
Hey Folks, There's a new version of AsUnit coming, and it's coming soon. Big thanks goes to Robert Penner for driving so much of the development of this next release. I meant to get some more progress on cleaning up the Async timeout stuff this weekend, but alas, work emergencies completely diverted me. Thanks to the aforementioned work-stuff, I'm pretty wiped out right now, but I wanted to get the basics out to this list. The next version of AsUnit is mainly about Annotations or Metadata. But, thanks to Robert Penner, this version of AsUnit is also amazingly modular. This will be the most comprehensible, easy-to-contribute-to, release of AsUnit ever. Please feel free to pull down the sources from Github, play around, poke around, ask questions and give suggestions. We're in the process of working with the Github guys to make the root of all the forks point here: http://github.com/patternpark/asunit In the mean time, Robert has his main fork here: http://github.com/robertpenner/asunit We're also using PivotalTracker to manage our tasks, please email this list if you have ideas or issues that we should add. http://www.pivotaltracker.com/projects/65416 Thanks, Luke Bayes |
From: Nathaniel B. <ns...@vi...> - 2009-12-10 18:37:25
|
Hello! I am looking to hire a AS3 developer that knows the BDD/TDD process with asUnit. We have a video player that is nearly complete, there are a few features yet to be completed, but the codebase is clean, design is done, functional spec is complete, and all we need now is someone to take it the through the last 4 important features and get it rolled out. I realize it's nearing xmas, but I'm hoping someone needs that extra chunk of cash to get the presents they so want to give. Please contact me and let me know if you'd be up for the gig. We have a tight deadline (need to get the features rolled out by the 23rd at the latest). There's about 20 hours for this first statement of work, but we're very much wanting to build an ongoing relationship with whoever is chosen so there will be many hours in the future. Thanks! Nathaniel. ----------- Nathaniel Brown, Co-founder & CEO Vidli - The Official Video Licensor http://vidli.com 888-99-VIDLI (84354) Direct: 303-991-1552 Follow Us on Twitter... http://twitter.com/vidli |
From: Kevin N. <Cap...@un...> - 2009-11-25 22:43:27
|
A quick change did propagate, but I'll keep an eye on it. I still have a lot to learn about how to use unit testing appropriately. I haven't gotten much farther than the tutorial code: public function testInstantiated():void { assertTrue("MyClass instantiated", instance is MyClass); } I do think the concepts are sinking in though. It should be useful. Thanks, Kevin N. |
From: Luke B. <lb...@pa...> - 2009-11-25 22:30:21
|
Like I said, it's been awhile since I've worked with Authoring. You should definitely double check this by making some obvious change to the source clip, then run your test to see if changes really propagate across the FLA boundary... lb. |
From: Kevin N. <Cap...@un...> - 2009-11-25 22:26:33
|
Yes, that does work! I also ticked the "Always update before publishing" checkbox in the Symbol Propteries dialog, so that updates will make it into the test. Hopefully that'll hold up over time. I guess I'll find out. :-) Kevin N. On 11/25/09 5:21 PM, Kevin Newman wrote: > It occurred to me that I might simply have to embed a copy of the > movieclip in the Test.fla - that would solve those missing references... > > I'll try that. :-) > > Kevin N. > > |
From: Kevin N. <Cap...@un...> - 2009-11-25 22:21:53
|
It occurred to me that I might simply have to embed a copy of the movieclip in the Test.fla - that would solve those missing references... I'll try that. :-) Kevin N. On 11/25/09 4:19 PM, Luke Bayes wrote: > It's been a very long time since I've worked in the Authoring IDE. > > Personally, I recommend using Authoring to build up named/exported > visual assets in the library and then using Flash Builder to actually > compile your application - with the [Embed] directive to reference > those entities. > > My other open source project - http://projectsprouts.org could be a > way to make this transition a little easier.... > > Does anyone else have recommendations for testing from Authoring? > > Thanks, > > Luke > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Asunit-users mailing list > Asu...@li... > https://lists.sourceforge.net/lists/listinfo/asunit-users > |
From: Luke B. <lb...@pa...> - 2009-11-25 21:44:46
|
It's been a very long time since I've worked in the Authoring IDE. Personally, I recommend using Authoring to build up named/exported visual assets in the library and then using Flash Builder to actually compile your application - with the [Embed] directive to reference those entities. My other open source project - http://projectsprouts.org could be a way to make this transition a little easier.... Does anyone else have recommendations for testing from Authoring? Thanks, Luke |
From: Kevin N. <Cap...@un...> - 2009-11-25 20:33:22
|
Hello, I'm brand new to asunit, and I have some noob questions. :-) How do you deal with named stage elements in unit testing? When I run the regular harness it complains (appropriately so) that the reference element has not been defined. Do I have to switch off "Automatically declare stage instances" to be able to properly use asunit from within Flash IDE? Thanks, Kevin N. |
From: Luke B. <lb...@pa...> - 2009-09-26 15:28:45
|
Nicely done Robert! Let's stay simple for sure. Luke On Fri, Sep 25, 2009 at 10:05 PM, Robert Penner <in...@ro...> wrote: > By comparison, most AsUnit failures have a call stack of 10 methods, 4 > of which come from setTimeout(). But I'm cutting that down to 7 in my > Github fork of AsUnit. > > Robert > > On Fri, Sep 25, 2009 at 6:52 PM, Robert Penner <in...@ro...> wrote: >> With FlexUnit 4, I run 1 suite with 1 class, 1 test method. The assert >> failure has a gigantic call stack: 60 methods high! >> >> The stack trace has several "async" methods, which is weird because >> I'm not using async at all. Methods like "applyExplosivelyAsync()" >> scare me. >> >> This looks really over-architected. How do they manage to take 60 >> steps to execute one test method? >> >> Robert >> >> >> at flexunit.framework::Assert$/fail()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\fluint\FlexUnit1Lib\src\flexunit\framework\Assert.as:370] >> at WidgetTest/testWidget()[C:\Users\robert.penner\Adobe Flash Builder >> Plug-in Beta 2\TestProject\src\WidgetTest.as:20] >> at Function/http://adobe.com/AS3/2006/builtin::apply() >> at flex.lang.reflect::Method/apply()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\flex\lang\reflect\Method.as:124] >> at ReflectiveCallable/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:214] >> at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:121] >> at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:132] >> at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod.as:52] >> at org.flexunit.internals.runners.statements::StackAndFrameManagement/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StackAndFrameManagement.as:94] >> at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] >> at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] >> at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.runners::BlockFlexUnit4ClassRunner/runChild()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\BlockFlexUnit4ClassRunner.as:104] >> at org.flexunit.internals.runners::ChildRunnerSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\ChildRunnerSequencer.as:49] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] >> at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] >> at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.runners::ParentRunner/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\ParentRunner.as:315] >> at org.flexunit.runners::Suite/runChild()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\Suite.as:59] >> at org.flexunit.internals.runners::ChildRunnerSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\ChildRunnerSequencer.as:49] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] >> at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] >> at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] >> at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] >> at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] >> at org.flexunit.runners::ParentRunner/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\ParentRunner.as:315] >> at org.flexunit.runner::FlexUnitCore/beginRunnerExecution()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\FlexUnitCore.as:177] >> at org.flexunit.token::AsyncListenersToken/sendReady()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncListenersToken.as:59] >> at org.flexunit.runner.notification.async::AsyncListenerWatcher/sendReadyNotification()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\notification\async\AsyncListenerWatcher.as:87] >> at org.flexunit.runner.notification.async::AsyncListenerWatcher/handleListenerReady()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\notification\async\AsyncListenerWatcher.as:97] >> at flash.events::EventDispatcher/dispatchEventFunction() >> at flash.events::EventDispatcher/dispatchEvent() >> at flexunit.flexui::FlexUnit4TestRunner/handleConnect()[C:\work\flex\ide_builder\com.adobe.flexbuilder.flexunit\flexunitframework\src\flexunit\flexui\FlexUnit4TestRunner.as:296] >> at flash.events::EventDispatcher/dispatchEventFunction() >> at flash.events::EventDispatcher/dispatchEvent() >> at flash.net::XMLSocket/reflectEvent() >> > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > Asunit-users mailing list > Asu...@li... > https://lists.sourceforge.net/lists/listinfo/asunit-users > |
From: Robert P. <in...@ro...> - 2009-09-26 05:05:17
|
By comparison, most AsUnit failures have a call stack of 10 methods, 4 of which come from setTimeout(). But I'm cutting that down to 7 in my Github fork of AsUnit. Robert On Fri, Sep 25, 2009 at 6:52 PM, Robert Penner <in...@ro...> wrote: > With FlexUnit 4, I run 1 suite with 1 class, 1 test method. The assert > failure has a gigantic call stack: 60 methods high! > > The stack trace has several "async" methods, which is weird because > I'm not using async at all. Methods like "applyExplosivelyAsync()" > scare me. > > This looks really over-architected. How do they manage to take 60 > steps to execute one test method? > > Robert > > > at flexunit.framework::Assert$/fail()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\fluint\FlexUnit1Lib\src\flexunit\framework\Assert.as:370] > at WidgetTest/testWidget()[C:\Users\robert.penner\Adobe Flash Builder > Plug-in Beta 2\TestProject\src\WidgetTest.as:20] > at Function/http://adobe.com/AS3/2006/builtin::apply() > at flex.lang.reflect::Method/apply()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\flex\lang\reflect\Method.as:124] > at ReflectiveCallable/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:214] > at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:121] > at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:132] > at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod.as:52] > at org.flexunit.internals.runners.statements::StackAndFrameManagement/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StackAndFrameManagement.as:94] > at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] > at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] > at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.runners::BlockFlexUnit4ClassRunner/runChild()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\BlockFlexUnit4ClassRunner.as:104] > at org.flexunit.internals.runners::ChildRunnerSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\ChildRunnerSequencer.as:49] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] > at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] > at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.runners::ParentRunner/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\ParentRunner.as:315] > at org.flexunit.runners::Suite/runChild()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\Suite.as:59] > at org.flexunit.internals.runners::ChildRunnerSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\ChildRunnerSequencer.as:49] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] > at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] > at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] > at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] > at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] > at org.flexunit.runners::ParentRunner/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\ParentRunner.as:315] > at org.flexunit.runner::FlexUnitCore/beginRunnerExecution()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\FlexUnitCore.as:177] > at org.flexunit.token::AsyncListenersToken/sendReady()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncListenersToken.as:59] > at org.flexunit.runner.notification.async::AsyncListenerWatcher/sendReadyNotification()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\notification\async\AsyncListenerWatcher.as:87] > at org.flexunit.runner.notification.async::AsyncListenerWatcher/handleListenerReady()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\notification\async\AsyncListenerWatcher.as:97] > at flash.events::EventDispatcher/dispatchEventFunction() > at flash.events::EventDispatcher/dispatchEvent() > at flexunit.flexui::FlexUnit4TestRunner/handleConnect()[C:\work\flex\ide_builder\com.adobe.flexbuilder.flexunit\flexunitframework\src\flexunit\flexui\FlexUnit4TestRunner.as:296] > at flash.events::EventDispatcher/dispatchEventFunction() > at flash.events::EventDispatcher/dispatchEvent() > at flash.net::XMLSocket/reflectEvent() > |
From: Robert P. <in...@ro...> - 2009-09-26 03:06:15
|
With FlexUnit 4, I run 1 suite with 1 class, 1 test method. The assert failure has a gigantic call stack: 60 methods high! The stack trace has several "async" methods, which is weird because I'm not using async at all. Methods like "applyExplosivelyAsync()" scare me. This looks really over-architected. How do they manage to take 60 steps to execute one test method? Robert at flexunit.framework::Assert$/fail()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\fluint\FlexUnit1Lib\src\flexunit\framework\Assert.as:370] at WidgetTest/testWidget()[C:\Users\robert.penner\Adobe Flash Builder Plug-in Beta 2\TestProject\src\WidgetTest.as:20] at Function/http://adobe.com/AS3/2006/builtin::apply() at flex.lang.reflect::Method/apply()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\flex\lang\reflect\Method.as:124] at ReflectiveCallable/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:214] at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:121] at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:132] at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod.as:52] at org.flexunit.internals.runners.statements::StackAndFrameManagement/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StackAndFrameManagement.as:94] at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.runners::BlockFlexUnit4ClassRunner/runChild()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\BlockFlexUnit4ClassRunner.as:104] at org.flexunit.internals.runners::ChildRunnerSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\ChildRunnerSequencer.as:49] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.runners::ParentRunner/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\ParentRunner.as:315] at org.flexunit.runners::Suite/runChild()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\Suite.as:59] at org.flexunit.internals.runners::ChildRunnerSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\ChildRunnerSequencer.as:49] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.token::AsyncTestToken/sendResult()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:70] at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\AsyncStatementBase.as:44] at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:103] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:86] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:62] at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:82] at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\internals\runners\statements\StatementSequencer.as:68] at org.flexunit.runners::ParentRunner/run()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runners\ParentRunner.as:315] at org.flexunit.runner::FlexUnitCore/beginRunnerExecution()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\FlexUnitCore.as:177] at org.flexunit.token::AsyncListenersToken/sendReady()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\token\AsyncListenersToken.as:59] at org.flexunit.runner.notification.async::AsyncListenerWatcher/sendReadyNotification()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\notification\async\AsyncListenerWatcher.as:87] at org.flexunit.runner.notification.async::AsyncListenerWatcher/handleListenerReady()[C:\Users\mlabriola\Documents\workspaces\net\digitalprimates\opensource\flexunit\FlexUnit4\src\org\flexunit\runner\notification\async\AsyncListenerWatcher.as:97] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at flexunit.flexui::FlexUnit4TestRunner/handleConnect()[C:\work\flex\ide_builder\com.adobe.flexbuilder.flexunit\flexunitframework\src\flexunit\flexui\FlexUnit4TestRunner.as:296] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at flash.net::XMLSocket/reflectEvent() |
From: Luke B. <lb...@pa...> - 2009-08-05 03:57:12
|
Hey Folks, There's a new release of the ActionScript 3.0 AsUnit framework available. You can download it here: http://github.com/lukebayes/asunit/zipball/release The link from http://asunit.org has also been updated to point at this new release. This release includes quite a few great bug fixes from our awesome community of users! * Alec McEachran submitted a patch for an issue with empty TestCases - more info here: http://alecmce.com/wp-comments-post.php * Alan Shaw did some amazing work to clean up our Asynchronous Test Case support * Robert Penner added some more cleanup and fixes for Asynchronous features. * Dmirty Svetlichny reminded us that Flash Authoring users need us to extend MovieClip instead of Sprite in our base test runners. * And finally, I've added a new assertion - assertThrows that adds support for testing behaviors that you expect to fail. You can use this new assertion as follows: assertThrows(YourCustomError, function():void { fixture.doSomethingThatThrowsACustomError(); }); You'll get a test failure if the closure doesn't throw an exception of the expected type. There will also be a new gem available shortly for those of you that are using Project Sprouts (http://projectsprouts.org) for your automated builds. We really appreciate all the help from everyone! Keep up the great work! Thanks, Luke Bayes http://asunit.org |
From: Luke B. <lb...@pa...> - 2009-06-20 17:29:52
|
Yep - Could be wrong, but I'm pretty sure versions before CS4 allowed you to subclass Sprite instead of MovieClip... In any case, we can probably change that subclass to make sure it works everywhere. lb. On Fri, Jun 19, 2009 at 5:03 PM, Robert Penner <in...@ro...>wrote: > I tried to use AsUnit with an AS3 document class but got a compile error: > > 5000: The class 'TestBootstrapper' must subclass 'flash.display.MovieClip' > since it is linked to a library symbol of that type. > > TestRunner currently subclasses Sprite. Has it always been this way? > > Here's my class: > > package > { > import asunit.textui.TestRunner; > > public class TestBootstrapper extends TestRunner > { > public function TestBootstrapper() > { > start(AllTests); > } > } > } > > Robert > > > > > ------------------------------------------------------------------------------ > Are you an open source citizen? Join us for the Open Source Bridge > conference! > Portland, OR, June 17-19. Two days of sessions, one day of unconference: > $250. > Need another reason to go? 24-hour hacker lounge. Register today! > > http://ad.doubleclick.net/clk;215844324;13503038;v?http://opensourcebridge.org > _______________________________________________ > Asunit-users mailing list > Asu...@li... > https://lists.sourceforge.net/lists/listinfo/asunit-users > > |
From: Robert P. <in...@ro...> - 2009-06-20 00:11:06
|
I tried to use AsUnit with an AS3 document class but got a compile error: 5000: The class 'TestBootstrapper' must subclass 'flash.display.MovieClip' since it is linked to a library symbol of that type. TestRunner currently subclasses Sprite. Has it always been this way? Here's my class: package { import asunit.textui.TestRunner; public class TestBootstrapper extends TestRunner { public function TestBootstrapper() { start(AllTests); } } } Robert |
From: Luke B. <lb...@pa...> - 2009-06-15 18:31:43
|
Nice! Thanks Sam - Luke On Mon, Jun 15, 2009 at 11:20 AM, sam / pixelconsumption < sa...@pi...> wrote: > bingo, > http://opensource.adobe.com/svn/opensource/flexunit/branches/4.x/FlexUnit4CIRunner/src/org/flexunit/listeners/JUnitListener.as > sr > > > On Mon, Jun 15, 2009 at 2:15 PM, sam / pixelconsumption < > sa...@pi...> wrote: > >> I've decompiled Flex Builder before, I can do it again with Flash Builder >> ;). I'm guessing they use a version of the ant task that opens a socket and >> waits for the junit report style xml to be sent across. >> sr >> >> >> On Mon, Jun 15, 2009 at 1:58 PM, Robert Penner <in...@ro...>wrote: >> >>> Luke, >>> >>> Thanks for this investigation; I wasn't aware of all those Flex >>> dependencies. I agree with your overall assessment and recommendations. >>> >>> I've worked with Hamcrest a fair bit and I would love to work on >>> integrating it into AsUnit. I'll start another thread to discuss how to do >>> that. >>> >>> Robert >>> >>> >>> On Sun, Jun 14, 2009 at 3:18 PM, Luke Bayes <lb...@pa...>wrote: >>> >>>> I did some digging this weekend into FlexUnit 4 sources, implementations >>>> and metadata / annotations in MXMLC. >>>> >>>> One major problem I have with metadata tags is that they can only be >>>> discovered at runtime for public members. I imagine there are hooks in the >>>> compiler that make [Bindable] and [Embed] work even for >>>> private/protected/namespaced members, but getting into runtime, custom tags >>>> means we have access only to public members that are visible to >>>> describeType. >>>> >>>> This is a little annoying to me, because I value having private / >>>> protected features for set up and tear down, as well as test helpers with >>>> custom domain-specific assertions. It feels awkward to expose these methods >>>> as public everywhere. >>>> >>>> I'm also annoyed with metadata in that we don't have any reliable >>>> information about the 'order of declaration' which leads to ugly duplication >>>> like [Before(order=1)], [Before(order=2)], etc. >>>> >>>> Then there are of course the issues Robert uncovered around supporting >>>> metadata in Authoring CS3, which pretty much means that today - MXMLC is the >>>> only compiler for which these tags have value. >>>> >>>> The worst news is that the FlexUnit 3 implementation (excluding the >>>> printers) had pretty limited Flex framework dependencies, all of which would >>>> have been trivial to rip out. Unfortunately, FlexUnit 4 has tightly >>>> integrated the AsyncToken garbage along with Flex collections and Logging. >>>> Fluint (which is now also bundled) has extensive framework dependencies that >>>> are unlikely to be extricated without a major overhaul... >>>> >>>> My conclusions at this point are as follows: >>>> >>>> FlexUnit is now appropriately named and works only with projects that >>>> don't mind executing tests within a Flex application SWF. >>>> >>>> I'm not sure I really understand the true value of annotations when >>>> compared to inheritance... We could certainly gain many of the benefits >>>> (multiple setup/teardown, class-level setup/teardown, and custom assertions >>>> using inheritance and minor modifications to our existing code. >>>> >>>> I perceive the real value of the latest release of FlexUnit to actually >>>> be the following: >>>> >>>> 1) Fluint seems to do a great job of describing and handling >>>> asynchronous event sequences >>>> >>>> 2) Hamcrest seems to be helpful for mocking and stubbing features >>>> >>>> 3) Generators and test output integrated into Eclipse >>>> >>>> It might be a worthwhile endeavor for us to do the following: >>>> >>>> 1) Improve how we deal with asynchronous event chains using Fluint as a >>>> design guide. >>>> >>>> 2) Consider integrating Hamcrest, or at least look more closely at how >>>> it may improve our own recommended workflow. >>>> >>>> 3) Investigate writing an Eclipse plugin that lets us generate classes >>>> and test cases more easily within the IDE, and write a new printer/runner >>>> that emits results into the Flash/Flex Builder test output. This could >>>> actually be a separate project that anyone could contribute. >>>> >>>> I'd welcome any input on these ideas and concede that I may well be >>>> missing something critical in any of the above points. >>>> >>>> Anyone out there agree or disagree? >>>> >>>> >>>> Thanks, >>>> >>>> Luke >>>> >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Crystal Reports - New Free Runtime and 30 Day Trial >>>> Check out the new simplified licensing option that enables unlimited >>>> royalty-free distribution of the report engine for externally facing >>>> server and web deployment. >>>> http://p.sf.net/sfu/businessobjects >>>> _______________________________________________ >>>> Asunit-users mailing list >>>> Asu...@li... >>>> https://lists.sourceforge.net/lists/listinfo/asunit-users >>>> >>>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Crystal Reports - New Free Runtime and 30 Day Trial >>> Check out the new simplified licensing option that enables unlimited >>> royalty-free distribution of the report engine for externally facing >>> server and web deployment. >>> http://p.sf.net/sfu/businessobjects >>> _______________________________________________ >>> Asunit-users mailing list >>> Asu...@li... >>> https://lists.sourceforge.net/lists/listinfo/asunit-users >>> >>> >> > > > ------------------------------------------------------------------------------ > Crystal Reports - New Free Runtime and 30 Day Trial > Check out the new simplified licensing option that enables unlimited > royalty-free distribution of the report engine for externally facing > server and web deployment. > http://p.sf.net/sfu/businessobjects > _______________________________________________ > Asunit-users mailing list > Asu...@li... > https://lists.sourceforge.net/lists/listinfo/asunit-users > > |
From: sam / p. <sa...@pi...> - 2009-06-15 18:21:56
|
Hit return too fast, that is just the updated ant task but I think we all agree that the only way they are doing this is a socket for the flash builder swt ui. sr On Mon, Jun 15, 2009 at 2:20 PM, sam / pixelconsumption < sa...@pi...> wrote: > bingo, > http://opensource.adobe.com/svn/opensource/flexunit/branches/4.x/FlexUnit4CIRunner/src/org/flexunit/listeners/JUnitListener.as > sr > > > On Mon, Jun 15, 2009 at 2:15 PM, sam / pixelconsumption < > sa...@pi...> wrote: > >> I've decompiled Flex Builder before, I can do it again with Flash Builder >> ;). I'm guessing they use a version of the ant task that opens a socket and >> waits for the junit report style xml to be sent across. >> sr >> >> >> On Mon, Jun 15, 2009 at 1:58 PM, Robert Penner <in...@ro...>wrote: >> >>> Luke, >>> >>> Thanks for this investigation; I wasn't aware of all those Flex >>> dependencies. I agree with your overall assessment and recommendations. >>> >>> I've worked with Hamcrest a fair bit and I would love to work on >>> integrating it into AsUnit. I'll start another thread to discuss how to do >>> that. >>> >>> Robert >>> >>> >>> On Sun, Jun 14, 2009 at 3:18 PM, Luke Bayes <lb...@pa...>wrote: >>> >>>> I did some digging this weekend into FlexUnit 4 sources, implementations >>>> and metadata / annotations in MXMLC. >>>> >>>> One major problem I have with metadata tags is that they can only be >>>> discovered at runtime for public members. I imagine there are hooks in the >>>> compiler that make [Bindable] and [Embed] work even for >>>> private/protected/namespaced members, but getting into runtime, custom tags >>>> means we have access only to public members that are visible to >>>> describeType. >>>> >>>> This is a little annoying to me, because I value having private / >>>> protected features for set up and tear down, as well as test helpers with >>>> custom domain-specific assertions. It feels awkward to expose these methods >>>> as public everywhere. >>>> >>>> I'm also annoyed with metadata in that we don't have any reliable >>>> information about the 'order of declaration' which leads to ugly duplication >>>> like [Before(order=1)], [Before(order=2)], etc. >>>> >>>> Then there are of course the issues Robert uncovered around supporting >>>> metadata in Authoring CS3, which pretty much means that today - MXMLC is the >>>> only compiler for which these tags have value. >>>> >>>> The worst news is that the FlexUnit 3 implementation (excluding the >>>> printers) had pretty limited Flex framework dependencies, all of which would >>>> have been trivial to rip out. Unfortunately, FlexUnit 4 has tightly >>>> integrated the AsyncToken garbage along with Flex collections and Logging. >>>> Fluint (which is now also bundled) has extensive framework dependencies that >>>> are unlikely to be extricated without a major overhaul... >>>> >>>> My conclusions at this point are as follows: >>>> >>>> FlexUnit is now appropriately named and works only with projects that >>>> don't mind executing tests within a Flex application SWF. >>>> >>>> I'm not sure I really understand the true value of annotations when >>>> compared to inheritance... We could certainly gain many of the benefits >>>> (multiple setup/teardown, class-level setup/teardown, and custom assertions >>>> using inheritance and minor modifications to our existing code. >>>> >>>> I perceive the real value of the latest release of FlexUnit to actually >>>> be the following: >>>> >>>> 1) Fluint seems to do a great job of describing and handling >>>> asynchronous event sequences >>>> >>>> 2) Hamcrest seems to be helpful for mocking and stubbing features >>>> >>>> 3) Generators and test output integrated into Eclipse >>>> >>>> It might be a worthwhile endeavor for us to do the following: >>>> >>>> 1) Improve how we deal with asynchronous event chains using Fluint as a >>>> design guide. >>>> >>>> 2) Consider integrating Hamcrest, or at least look more closely at how >>>> it may improve our own recommended workflow. >>>> >>>> 3) Investigate writing an Eclipse plugin that lets us generate classes >>>> and test cases more easily within the IDE, and write a new printer/runner >>>> that emits results into the Flash/Flex Builder test output. This could >>>> actually be a separate project that anyone could contribute. >>>> >>>> I'd welcome any input on these ideas and concede that I may well be >>>> missing something critical in any of the above points. >>>> >>>> Anyone out there agree or disagree? >>>> >>>> >>>> Thanks, >>>> >>>> Luke >>>> >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Crystal Reports - New Free Runtime and 30 Day Trial >>>> Check out the new simplified licensing option that enables unlimited >>>> royalty-free distribution of the report engine for externally facing >>>> server and web deployment. >>>> http://p.sf.net/sfu/businessobjects >>>> _______________________________________________ >>>> Asunit-users mailing list >>>> Asu...@li... >>>> https://lists.sourceforge.net/lists/listinfo/asunit-users >>>> >>>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Crystal Reports - New Free Runtime and 30 Day Trial >>> Check out the new simplified licensing option that enables unlimited >>> royalty-free distribution of the report engine for externally facing >>> server and web deployment. >>> http://p.sf.net/sfu/businessobjects >>> _______________________________________________ >>> Asunit-users mailing list >>> Asu...@li... >>> https://lists.sourceforge.net/lists/listinfo/asunit-users >>> >>> >> > |
From: sam / p. <sa...@pi...> - 2009-06-15 18:21:15
|
bingo, http://opensource.adobe.com/svn/opensource/flexunit/branches/4.x/FlexUnit4CIRunner/src/org/flexunit/listeners/JUnitListener.as sr On Mon, Jun 15, 2009 at 2:15 PM, sam / pixelconsumption < sa...@pi...> wrote: > I've decompiled Flex Builder before, I can do it again with Flash Builder > ;). I'm guessing they use a version of the ant task that opens a socket and > waits for the junit report style xml to be sent across. > sr > > > On Mon, Jun 15, 2009 at 1:58 PM, Robert Penner <in...@ro...>wrote: > >> Luke, >> >> Thanks for this investigation; I wasn't aware of all those Flex >> dependencies. I agree with your overall assessment and recommendations. >> >> I've worked with Hamcrest a fair bit and I would love to work on >> integrating it into AsUnit. I'll start another thread to discuss how to do >> that. >> >> Robert >> >> >> On Sun, Jun 14, 2009 at 3:18 PM, Luke Bayes <lb...@pa...>wrote: >> >>> I did some digging this weekend into FlexUnit 4 sources, implementations >>> and metadata / annotations in MXMLC. >>> >>> One major problem I have with metadata tags is that they can only be >>> discovered at runtime for public members. I imagine there are hooks in the >>> compiler that make [Bindable] and [Embed] work even for >>> private/protected/namespaced members, but getting into runtime, custom tags >>> means we have access only to public members that are visible to >>> describeType. >>> >>> This is a little annoying to me, because I value having private / >>> protected features for set up and tear down, as well as test helpers with >>> custom domain-specific assertions. It feels awkward to expose these methods >>> as public everywhere. >>> >>> I'm also annoyed with metadata in that we don't have any reliable >>> information about the 'order of declaration' which leads to ugly duplication >>> like [Before(order=1)], [Before(order=2)], etc. >>> >>> Then there are of course the issues Robert uncovered around supporting >>> metadata in Authoring CS3, which pretty much means that today - MXMLC is the >>> only compiler for which these tags have value. >>> >>> The worst news is that the FlexUnit 3 implementation (excluding the >>> printers) had pretty limited Flex framework dependencies, all of which would >>> have been trivial to rip out. Unfortunately, FlexUnit 4 has tightly >>> integrated the AsyncToken garbage along with Flex collections and Logging. >>> Fluint (which is now also bundled) has extensive framework dependencies that >>> are unlikely to be extricated without a major overhaul... >>> >>> My conclusions at this point are as follows: >>> >>> FlexUnit is now appropriately named and works only with projects that >>> don't mind executing tests within a Flex application SWF. >>> >>> I'm not sure I really understand the true value of annotations when >>> compared to inheritance... We could certainly gain many of the benefits >>> (multiple setup/teardown, class-level setup/teardown, and custom assertions >>> using inheritance and minor modifications to our existing code. >>> >>> I perceive the real value of the latest release of FlexUnit to actually >>> be the following: >>> >>> 1) Fluint seems to do a great job of describing and handling asynchronous >>> event sequences >>> >>> 2) Hamcrest seems to be helpful for mocking and stubbing features >>> >>> 3) Generators and test output integrated into Eclipse >>> >>> It might be a worthwhile endeavor for us to do the following: >>> >>> 1) Improve how we deal with asynchronous event chains using Fluint as a >>> design guide. >>> >>> 2) Consider integrating Hamcrest, or at least look more closely at how it >>> may improve our own recommended workflow. >>> >>> 3) Investigate writing an Eclipse plugin that lets us generate classes >>> and test cases more easily within the IDE, and write a new printer/runner >>> that emits results into the Flash/Flex Builder test output. This could >>> actually be a separate project that anyone could contribute. >>> >>> I'd welcome any input on these ideas and concede that I may well be >>> missing something critical in any of the above points. >>> >>> Anyone out there agree or disagree? >>> >>> >>> Thanks, >>> >>> Luke >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Crystal Reports - New Free Runtime and 30 Day Trial >>> Check out the new simplified licensing option that enables unlimited >>> royalty-free distribution of the report engine for externally facing >>> server and web deployment. >>> http://p.sf.net/sfu/businessobjects >>> _______________________________________________ >>> Asunit-users mailing list >>> Asu...@li... >>> https://lists.sourceforge.net/lists/listinfo/asunit-users >>> >>> >> >> >> ------------------------------------------------------------------------------ >> Crystal Reports - New Free Runtime and 30 Day Trial >> Check out the new simplified licensing option that enables unlimited >> royalty-free distribution of the report engine for externally facing >> server and web deployment. >> http://p.sf.net/sfu/businessobjects >> _______________________________________________ >> Asunit-users mailing list >> Asu...@li... >> https://lists.sourceforge.net/lists/listinfo/asunit-users >> >> > |
From: sam / p. <sa...@pi...> - 2009-06-15 18:17:04
|
I've decompiled Flex Builder before, I can do it again with Flash Builder ;). I'm guessing they use a version of the ant task that opens a socket and waits for the junit report style xml to be sent across. sr On Mon, Jun 15, 2009 at 1:58 PM, Robert Penner <in...@ro...>wrote: > Luke, > > Thanks for this investigation; I wasn't aware of all those Flex > dependencies. I agree with your overall assessment and recommendations. > > I've worked with Hamcrest a fair bit and I would love to work on > integrating it into AsUnit. I'll start another thread to discuss how to do > that. > > Robert > > > On Sun, Jun 14, 2009 at 3:18 PM, Luke Bayes <lb...@pa...>wrote: > >> I did some digging this weekend into FlexUnit 4 sources, implementations >> and metadata / annotations in MXMLC. >> >> One major problem I have with metadata tags is that they can only be >> discovered at runtime for public members. I imagine there are hooks in the >> compiler that make [Bindable] and [Embed] work even for >> private/protected/namespaced members, but getting into runtime, custom tags >> means we have access only to public members that are visible to >> describeType. >> >> This is a little annoying to me, because I value having private / >> protected features for set up and tear down, as well as test helpers with >> custom domain-specific assertions. It feels awkward to expose these methods >> as public everywhere. >> >> I'm also annoyed with metadata in that we don't have any reliable >> information about the 'order of declaration' which leads to ugly duplication >> like [Before(order=1)], [Before(order=2)], etc. >> >> Then there are of course the issues Robert uncovered around supporting >> metadata in Authoring CS3, which pretty much means that today - MXMLC is the >> only compiler for which these tags have value. >> >> The worst news is that the FlexUnit 3 implementation (excluding the >> printers) had pretty limited Flex framework dependencies, all of which would >> have been trivial to rip out. Unfortunately, FlexUnit 4 has tightly >> integrated the AsyncToken garbage along with Flex collections and Logging. >> Fluint (which is now also bundled) has extensive framework dependencies that >> are unlikely to be extricated without a major overhaul... >> >> My conclusions at this point are as follows: >> >> FlexUnit is now appropriately named and works only with projects that >> don't mind executing tests within a Flex application SWF. >> >> I'm not sure I really understand the true value of annotations when >> compared to inheritance... We could certainly gain many of the benefits >> (multiple setup/teardown, class-level setup/teardown, and custom assertions >> using inheritance and minor modifications to our existing code. >> >> I perceive the real value of the latest release of FlexUnit to actually be >> the following: >> >> 1) Fluint seems to do a great job of describing and handling asynchronous >> event sequences >> >> 2) Hamcrest seems to be helpful for mocking and stubbing features >> >> 3) Generators and test output integrated into Eclipse >> >> It might be a worthwhile endeavor for us to do the following: >> >> 1) Improve how we deal with asynchronous event chains using Fluint as a >> design guide. >> >> 2) Consider integrating Hamcrest, or at least look more closely at how it >> may improve our own recommended workflow. >> >> 3) Investigate writing an Eclipse plugin that lets us generate classes and >> test cases more easily within the IDE, and write a new printer/runner that >> emits results into the Flash/Flex Builder test output. This could actually >> be a separate project that anyone could contribute. >> >> I'd welcome any input on these ideas and concede that I may well be >> missing something critical in any of the above points. >> >> Anyone out there agree or disagree? >> >> >> Thanks, >> >> Luke >> >> >> >> ------------------------------------------------------------------------------ >> Crystal Reports - New Free Runtime and 30 Day Trial >> Check out the new simplified licensing option that enables unlimited >> royalty-free distribution of the report engine for externally facing >> server and web deployment. >> http://p.sf.net/sfu/businessobjects >> _______________________________________________ >> Asunit-users mailing list >> Asu...@li... >> https://lists.sourceforge.net/lists/listinfo/asunit-users >> >> > > > ------------------------------------------------------------------------------ > Crystal Reports - New Free Runtime and 30 Day Trial > Check out the new simplified licensing option that enables unlimited > royalty-free distribution of the report engine for externally facing > server and web deployment. > http://p.sf.net/sfu/businessobjects > _______________________________________________ > Asunit-users mailing list > Asu...@li... > https://lists.sourceforge.net/lists/listinfo/asunit-users > > |