|
From: James S. <jst...@j-...> - 2007-10-24 16:49:42
|
Hello, I was just wondering if anybody has had any luck getting AsUnit and Gnash to play nicely with each other. I'm currently working on setting up an automated build process for an open source Flash project, and I would like to have the Ubuntu server that is hosting the repository run the unit tests automatically from the command line as a post-commit hook. Since Gnash has the ability to print trace statements to standard output when invoked with the verbose (-v) flag, it seemed like a potentially convenient alternative to the current workaround involving installing the debug Flash player and fiddling with the mm.cfg file. In addition, Gnash also has the ability to suppress rendering and sound when running an SWF, thus making it an even better candidate for use with command line batch processes. As an added bonus, Gnash is free software and is thus available for a wider variety of Linux systems, which many servers are more likely to be running anyway. With this in mind, I attempted to write my own StdOutResultPrinter class that routed output to the trace method as opposed to the text box used by the default ResultPrinter class in AsUnit. Unfortunately, my resulting SWF only caused Gnash 0.8.1 to throw up a bunch of error messages which I can't decipher (listed below). Since Gnash is still in an alpha stage and most of the error messages seem to be of the "Unimplemented" variety, I'm guessing that this is simply a result of some missing functionality within Gnash itself. On the other hand, I have verified that trace does print correctly to standard output in a separate SWF compiled without AsUnit and run with the same version of Gnash - therefore, it does seems as though there is a more specific problem resulting from using the two together. Of course, it's also entirely possible that I just wrote my StdOutResultPrinter in some goofy way that is causing problems. So, to reiterate, what I'm wondering is: has anybody tried to experiment along similar lines with AsUnit and Gnash? If so, have you managed to figure out any kind of a workaround for integrating them? I feel like this could potentially be a useful solution for others who are trying to set up their own build systems, and I can't imagine I'm the first person to attempt to utilize this same approach. The frustrating part is that it seems so close to working, but it could be that I'll just need to wait for a more fully-featured release of Gnash before it will be truly viable. That said, I would love to be proven wrong, so any ideas would be greatly appreciated. Thanks, Jamey -- Gnash output log: 3792] 23:50:17: Verbose output turned on 3792] 23:50:17: Base url set to: [tests.swf] 3792] 23:50:17: Movie [tests.swf] (SWF7) added to library 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionImplementsOp(gnash::ActionExec&) 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionImplementsOp(gnash::ActionExec&) 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionImplementsOp(gnash::ActionExec&) 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionImplementsOp(gnash::ActionExec&) 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionImplementsOp(gnash::ActionExec&) 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionThrow(gnash::ActionExec&) 3792] 23:50:17: frame load advancement (from 4294967295 to 1) 3792] 23:50:17: ERROR: At end of stream, still no 'undefined' symbol found in m_exports (25 entries in it, follow) 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionTry(gnash::ActionExec&) 3792] 23:50:17: ACTIONSCRIPT ERROR: Script aborted due to exceeded limit: Max stack count reached (255) 3792] 23:50:17: ERROR: Unimplemented: static void gnash::SWF::SWFHandlers::ActionTry(gnash::ActionExec&) |