You can subscribe to this list here.
| 2006 |
Jan
|
Feb
|
Mar
(45) |
Apr
(7) |
May
(2) |
Jun
(5) |
Jul
|
Aug
(8) |
Sep
(49) |
Oct
(13) |
Nov
(11) |
Dec
(2) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(13) |
Feb
(4) |
Mar
(1) |
Apr
|
May
(2) |
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(7) |
Dec
(1) |
| 2008 |
Jan
|
Feb
(7) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(15) |
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2009 |
Jan
(3) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <luk...@us...> - 2006-09-20 18:47:55
|
Revision: 108
http://svn.sourceforge.net/asunit/?rev=108&view=rev
Author: lukebayes
Date: 2006-09-20 11:47:52 -0700 (Wed, 20 Sep 2006)
Log Message:
-----------
updated ignore props
Property Changed:
----------------
trunk/ruby/demo/
Property changes on: trunk/ruby/demo
___________________________________________________________________
Name: svn:ignore
+ html-template
.settings
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-20 18:47:24
|
Revision: 107
http://svn.sourceforge.net/asunit/?rev=107&view=rev
Author: lukebayes
Date: 2006-09-20 11:47:21 -0700 (Wed, 20 Sep 2006)
Log Message:
-----------
updated ignore props
Property Changed:
----------------
trunk/ruby/
Property changes on: trunk/ruby
___________________________________________________________________
Name: svn:ignore
+ .settings
html-template
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-20 18:43:51
|
Revision: 106
http://svn.sourceforge.net/asunit/?rev=106&view=rev
Author: lukebayes
Date: 2006-09-20 11:42:22 -0700 (Wed, 20 Sep 2006)
Log Message:
-----------
worked on the ruby project tools
Modified Paths:
--------------
trunk/ruby/src/asunit
trunk/ruby/src/asunit_arguments.rb
trunk/ruby/src/template_resolver.rb
trunk/ruby/src/templates/TestCase.erb
Added Paths:
-----------
trunk/ruby/demo/bin/
trunk/ruby/demo/bin/AC_OETags.js
trunk/ruby/demo/bin/AsUnitRubyDemo-debug.html
trunk/ruby/demo/bin/AsUnitRubyDemo-debug.swf
trunk/ruby/demo/bin/AsUnitRubyDemo.html
trunk/ruby/demo/bin/AsUnitRubyDemo.swf
trunk/ruby/demo/bin/history.htm
trunk/ruby/demo/bin/history.js
trunk/ruby/demo/bin/history.swf
trunk/ruby/demo/bin/playerProductInstall.swf
trunk/ruby/demo/src/
trunk/ruby/demo/src/AsUnitRubyDemo.mxml
trunk/ruby/demo/src/lifebin/
trunk/ruby/demo/src/lifebin/display/
trunk/ruby/demo/src/lifebin/display/Component.as
trunk/ruby/demo/src/lifebin/display/Container.as
trunk/ruby/demo/test/
trunk/ruby/demo/test/lifebin/
trunk/ruby/demo/test/lifebin/display/
trunk/ruby/demo/test/lifebin/display/ComponentTest.as
trunk/ruby/demo/test/lifebin/display/ContainerTest.as
trunk/ruby/src/asunit_application.rb
Removed Paths:
-------------
trunk/ruby/src/asunit.rb
Added: trunk/ruby/demo/bin/AC_OETags.js
===================================================================
--- trunk/ruby/demo/bin/AC_OETags.js (rev 0)
+++ trunk/ruby/demo/bin/AC_OETags.js 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,269 @@
+// Flash Player Version Detection - Rev 1.5
+// Detect Client Browser type
+// Copyright(c) 2005-2006 Adobe Macromedia Software, LLC. All rights reserved.
+var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
+var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
+var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
+
+function ControlVersion()
+{
+ var version;
+ var axo;
+ var e;
+
+ // NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry
+
+ try {
+ // version will be set for 7.X or greater players
+ axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
+ version = axo.GetVariable("$version");
+ } catch (e) {
+ }
+
+ if (!version)
+ {
+ try {
+ // version will be set for 6.X players only
+ axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
+
+ // installed player is some revision of 6.0
+ // GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
+ // so we have to be careful.
+
+ // default to the first public version
+ version = "WIN 6,0,21,0";
+
+ // throws if AllowScripAccess does not exist (introduced in 6.0r47)
+ axo.AllowScriptAccess = "always";
+
+ // safe to call for 6.0r47 or greater
+ version = axo.GetVariable("$version");
+
+ } catch (e) {
+ }
+ }
+
+ if (!version)
+ {
+ try {
+ // version will be set for 4.X or 5.X player
+ axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
+ version = axo.GetVariable("$version");
+ } catch (e) {
+ }
+ }
+
+ if (!version)
+ {
+ try {
+ // version will be set for 3.X player
+ axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
+ version = "WIN 3,0,18,0";
+ } catch (e) {
+ }
+ }
+
+ if (!version)
+ {
+ try {
+ // version will be set for 2.X player
+ axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
+ version = "WIN 2,0,0,11";
+ } catch (e) {
+ version = -1;
+ }
+ }
+
+ return version;
+}
+
+// JavaScript helper required to detect Flash Player PlugIn version information
+function GetSwfVer(){
+ // NS/Opera version >= 3 check for Flash plugin in plugin array
+ var flashVer = -1;
+
+ if (navigator.plugins != null && navigator.plugins.length > 0) {
+ if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
+ var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
+ var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
+ var descArray = flashDescription.split(" ");
+ var tempArrayMajor = descArray[2].split(".");
+ var versionMajor = tempArrayMajor[0];
+ var versionMinor = tempArrayMajor[1];
+ if ( descArray[3] != "" ) {
+ tempArrayMinor = descArray[3].split("r");
+ } else {
+ tempArrayMinor = descArray[4].split("r");
+ }
+ var versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
+ var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
+ }
+ }
+ // MSN/WebTV 2.6 supports Flash 4
+ else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
+ // WebTV 2.5 supports Flash 3
+ else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
+ // older WebTV supports Flash 2
+ else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
+ else if ( isIE && isWin && !isOpera ) {
+ flashVer = ControlVersion();
+ }
+ return flashVer;
+}
+
+// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
+function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
+{
+ versionStr = GetSwfVer();
+ if (versionStr == -1 ) {
+ return false;
+ } else if (versionStr != 0) {
+ if(isIE && isWin && !isOpera) {
+ // Given "WIN 2,0,0,11"
+ tempArray = versionStr.split(" "); // ["WIN", "2,0,0,11"]
+ tempString = tempArray[1]; // "2,0,0,11"
+ versionArray = tempString.split(","); // ['2', '0', '0', '11']
+ } else {
+ versionArray = versionStr.split(".");
+ }
+ var versionMajor = versionArray[0];
+ var versionMinor = versionArray[1];
+ var versionRevision = versionArray[2];
+
+ // is the major.revision >= requested major.revision AND the minor version >= requested minor
+ if (versionMajor > parseFloat(reqMajorVer)) {
+ return true;
+ } else if (versionMajor == parseFloat(reqMajorVer)) {
+ if (versionMinor > parseFloat(reqMinorVer))
+ return true;
+ else if (versionMinor == parseFloat(reqMinorVer)) {
+ if (versionRevision >= parseFloat(reqRevision))
+ return true;
+ }
+ }
+ return false;
+ }
+}
+
+function AC_AddExtension(src, ext)
+{
+ if (src.indexOf('?') != -1)
+ return src.replace(/\?/, ext+'?');
+ else
+ return src + ext;
+}
+
+function AC_Generateobj(objAttrs, params, embedAttrs)
+{
+ var str = '';
+ if (isIE && isWin && !isOpera)
+ {
+ str += '<object ';
+ for (var i in objAttrs)
+ str += i + '="' + objAttrs[i] + '" ';
+ for (var i in params)
+ str += '><param name="' + i + '" value="' + params[i] + '" /> ';
+ str += '></object>';
+ } else {
+ str += '<embed ';
+ for (var i in embedAttrs)
+ str += i + '="' + embedAttrs[i] + '" ';
+ str += '> </embed>';
+ }
+
+ document.write(str);
+}
+
+function AC_FL_RunContent(){
+ var ret =
+ AC_GetArgs
+ ( arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
+ , "application/x-shockwave-flash"
+ );
+ AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
+}
+
+function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
+ var ret = new Object();
+ ret.embedAttrs = new Object();
+ ret.params = new Object();
+ ret.objAttrs = new Object();
+ for (var i=0; i < args.length; i=i+2){
+ var currArg = args[i].toLowerCase();
+
+ switch (currArg){
+ case "classid":
+ break;
+ case "pluginspage":
+ ret.embedAttrs[args[i]] = args[i+1];
+ break;
+ case "src":
+ case "movie":
+ args[i+1] = AC_AddExtension(args[i+1], ext);
+ ret.embedAttrs["src"] = args[i+1];
+ ret.params[srcParamName] = args[i+1];
+ break;
+ case "onafterupdate":
+ case "onbeforeupdate":
+ case "onblur":
+ case "oncellchange":
+ case "onclick":
+ case "ondblClick":
+ case "ondrag":
+ case "ondragend":
+ case "ondragenter":
+ case "ondragleave":
+ case "ondragover":
+ case "ondrop":
+ case "onfinish":
+ case "onfocus":
+ case "onhelp":
+ case "onmousedown":
+ case "onmouseup":
+ case "onmouseover":
+ case "onmousemove":
+ case "onmouseout":
+ case "onkeypress":
+ case "onkeydown":
+ case "onkeyup":
+ case "onload":
+ case "onlosecapture":
+ case "onpropertychange":
+ case "onreadystatechange":
+ case "onrowsdelete":
+ case "onrowenter":
+ case "onrowexit":
+ case "onrowsinserted":
+ case "onstart":
+ case "onscroll":
+ case "onbeforeeditfocus":
+ case "onactivate":
+ case "onbeforedeactivate":
+ case "ondeactivate":
+ case "type":
+ case "codebase":
+ case "id":
+ ret.objAttrs[args[i]] = args[i+1];
+ break;
+ case "width":
+ case "height":
+ case "align":
+ case "vspace":
+ case "hspace":
+ case "class":
+ case "title":
+ case "accesskey":
+ case "name":
+ case "tabindex":
+ ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
+ break;
+ default:
+ ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
+ }
+ }
+ ret.objAttrs["classid"] = classid;
+ if (mimeType) ret.embedAttrs["type"] = mimeType;
+ return ret;
+}
+
+
Added: trunk/ruby/demo/bin/AsUnitRubyDemo-debug.html
===================================================================
--- trunk/ruby/demo/bin/AsUnitRubyDemo-debug.html (rev 0)
+++ trunk/ruby/demo/bin/AsUnitRubyDemo-debug.html 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,107 @@
+<!-- saved from url=(0014)about:internet -->
+<html lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<title></title>
+<script src="AC_OETags.js" language="javascript"></script>
+<style>
+body { margin: 0px; overflow:hidden }
+</style>
+<script language="JavaScript" type="text/javascript">
+<!--
+// -----------------------------------------------------------------------------
+// Globals
+// Major version of Flash required
+var requiredMajorVersion = 9;
+// Minor version of Flash required
+var requiredMinorVersion = 0;
+// Minor version of Flash required
+var requiredRevision = 0;
+// -----------------------------------------------------------------------------
+// -->
+</script>
+</head>
+
+<body scroll="no">
+<script language="JavaScript" type="text/javascript" src="history.js"></script>
+<script language="JavaScript" type="text/javascript">
+<!--
+// Version check for the Flash Player that has the ability to start Player Product Install (6.0r65)
+var hasProductInstall = DetectFlashVer(6, 0, 65);
+
+// Version check based upon the values defined in globals
+var hasRequestedVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
+
+
+// Check to see if a player with Flash Product Install is available and the version does not meet the requirements for playback
+if ( hasProductInstall && !hasRequestedVersion ) {
+ // MMdoctitle is the stored document.title value used by the installation process to close the window that started the process
+ // This is necessary in order to close browser windows that are still utilizing the older version of the player after installation has completed
+ // DO NOT MODIFY THE FOLLOWING FOUR LINES
+ // Location visited after installation is complete if installation is required
+ var MMPlayerType = (isIE == true) ? "ActiveX" : "PlugIn";
+ var MMredirectURL = window.location;
+ document.title = document.title.slice(0, 47) + " - Flash Player Installation";
+ var MMdoctitle = document.title;
+
+ AC_FL_RunContent(
+ "src", "playerProductInstall",
+ "FlashVars", "MMredirectURL="+MMredirectURL+'&MMplayerType='+MMPlayerType+'&MMdoctitle='+MMdoctitle+"",
+ "width", "100%",
+ "height", "100%",
+ "align", "middle",
+ "id", "AsUnitRubyDemo",
+ "quality", "high",
+ "bgcolor", "#869ca7",
+ "name", "AsUnitRubyDemo",
+ "allowScriptAccess","sameDomain",
+ "type", "application/x-shockwave-flash",
+ "pluginspage", "http://www.adobe.com/go/getflashplayer"
+ );
+} else if (hasRequestedVersion) {
+ // if we've detected an acceptable version
+ // embed the Flash Content SWF when all tests are passed
+ AC_FL_RunContent(
+ "src", "AsUnitRubyDemo-debug",
+ "width", "100%",
+ "height", "100%",
+ "align", "middle",
+ "id", "AsUnitRubyDemo",
+ "quality", "high",
+ "bgcolor", "#869ca7",
+ "name", "AsUnitRubyDemo",
+ "flashvars",'historyUrl=history.htm%3F&lconid=' + lc_id + '',
+ "allowScriptAccess","sameDomain",
+ "type", "application/x-shockwave-flash",
+ "pluginspage", "http://www.adobe.com/go/getflashplayer"
+ );
+ } else { // flash is too old or we can't detect the plugin
+ var alternateContent = 'Alternate HTML content should be placed here. '
+ + 'This content requires the Adobe Flash Player. '
+ + '<a href=http://www.adobe.com/go/getflash/>Get Flash</a>';
+ document.write(alternateContent); // insert non-flash content
+ }
+// -->
+</script>
+<noscript>
+ <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
+ id="AsUnitRubyDemo" width="100%" height="100%"
+ codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
+ <param name="movie" value="AsUnitRubyDemo-debug.swf" />
+ <param name="quality" value="high" />
+ <param name="bgcolor" value="#869ca7" />
+ <param name="allowScriptAccess" value="sameDomain" />
+ <embed src="AsUnitRubyDemo-debug.swf" quality="high" bgcolor="#869ca7"
+ width="100%" height="100%" name="AsUnitRubyDemo" align="middle"
+ play="true"
+ loop="false"
+ quality="high"
+ allowScriptAccess="sameDomain"
+ type="application/x-shockwave-flash"
+ pluginspage="http://www.adobe.com/go/getflashplayer">
+ </embed>
+ </object>
+</noscript>
+<iframe name="_history" src="history.htm" frameborder="0" scrolling="no" width="22" height="0"></iframe>
+</body>
+</html>
Added: trunk/ruby/demo/bin/AsUnitRubyDemo-debug.swf
===================================================================
(Binary files differ)
Property changes on: trunk/ruby/demo/bin/AsUnitRubyDemo-debug.swf
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/ruby/demo/bin/AsUnitRubyDemo.html
===================================================================
--- trunk/ruby/demo/bin/AsUnitRubyDemo.html (rev 0)
+++ trunk/ruby/demo/bin/AsUnitRubyDemo.html 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,107 @@
+<!-- saved from url=(0014)about:internet -->
+<html lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<title></title>
+<script src="AC_OETags.js" language="javascript"></script>
+<style>
+body { margin: 0px; overflow:hidden }
+</style>
+<script language="JavaScript" type="text/javascript">
+<!--
+// -----------------------------------------------------------------------------
+// Globals
+// Major version of Flash required
+var requiredMajorVersion = 9;
+// Minor version of Flash required
+var requiredMinorVersion = 0;
+// Minor version of Flash required
+var requiredRevision = 0;
+// -----------------------------------------------------------------------------
+// -->
+</script>
+</head>
+
+<body scroll="no">
+<script language="JavaScript" type="text/javascript" src="history.js"></script>
+<script language="JavaScript" type="text/javascript">
+<!--
+// Version check for the Flash Player that has the ability to start Player Product Install (6.0r65)
+var hasProductInstall = DetectFlashVer(6, 0, 65);
+
+// Version check based upon the values defined in globals
+var hasRequestedVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
+
+
+// Check to see if a player with Flash Product Install is available and the version does not meet the requirements for playback
+if ( hasProductInstall && !hasRequestedVersion ) {
+ // MMdoctitle is the stored document.title value used by the installation process to close the window that started the process
+ // This is necessary in order to close browser windows that are still utilizing the older version of the player after installation has completed
+ // DO NOT MODIFY THE FOLLOWING FOUR LINES
+ // Location visited after installation is complete if installation is required
+ var MMPlayerType = (isIE == true) ? "ActiveX" : "PlugIn";
+ var MMredirectURL = window.location;
+ document.title = document.title.slice(0, 47) + " - Flash Player Installation";
+ var MMdoctitle = document.title;
+
+ AC_FL_RunContent(
+ "src", "playerProductInstall",
+ "FlashVars", "MMredirectURL="+MMredirectURL+'&MMplayerType='+MMPlayerType+'&MMdoctitle='+MMdoctitle+"",
+ "width", "100%",
+ "height", "100%",
+ "align", "middle",
+ "id", "AsUnitRubyDemo",
+ "quality", "high",
+ "bgcolor", "#869ca7",
+ "name", "AsUnitRubyDemo",
+ "allowScriptAccess","sameDomain",
+ "type", "application/x-shockwave-flash",
+ "pluginspage", "http://www.adobe.com/go/getflashplayer"
+ );
+} else if (hasRequestedVersion) {
+ // if we've detected an acceptable version
+ // embed the Flash Content SWF when all tests are passed
+ AC_FL_RunContent(
+ "src", "AsUnitRubyDemo",
+ "width", "100%",
+ "height", "100%",
+ "align", "middle",
+ "id", "AsUnitRubyDemo",
+ "quality", "high",
+ "bgcolor", "#869ca7",
+ "name", "AsUnitRubyDemo",
+ "flashvars",'historyUrl=history.htm%3F&lconid=' + lc_id + '',
+ "allowScriptAccess","sameDomain",
+ "type", "application/x-shockwave-flash",
+ "pluginspage", "http://www.adobe.com/go/getflashplayer"
+ );
+ } else { // flash is too old or we can't detect the plugin
+ var alternateContent = 'Alternate HTML content should be placed here. '
+ + 'This content requires the Adobe Flash Player. '
+ + '<a href=http://www.adobe.com/go/getflash/>Get Flash</a>';
+ document.write(alternateContent); // insert non-flash content
+ }
+// -->
+</script>
+<noscript>
+ <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
+ id="AsUnitRubyDemo" width="100%" height="100%"
+ codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
+ <param name="movie" value="AsUnitRubyDemo.swf" />
+ <param name="quality" value="high" />
+ <param name="bgcolor" value="#869ca7" />
+ <param name="allowScriptAccess" value="sameDomain" />
+ <embed src="AsUnitRubyDemo.swf" quality="high" bgcolor="#869ca7"
+ width="100%" height="100%" name="AsUnitRubyDemo" align="middle"
+ play="true"
+ loop="false"
+ quality="high"
+ allowScriptAccess="sameDomain"
+ type="application/x-shockwave-flash"
+ pluginspage="http://www.adobe.com/go/getflashplayer">
+ </embed>
+ </object>
+</noscript>
+<iframe name="_history" src="history.htm" frameborder="0" scrolling="no" width="22" height="0"></iframe>
+</body>
+</html>
Added: trunk/ruby/demo/bin/AsUnitRubyDemo.swf
===================================================================
(Binary files differ)
Property changes on: trunk/ruby/demo/bin/AsUnitRubyDemo.swf
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/ruby/demo/bin/history.htm
===================================================================
--- trunk/ruby/demo/bin/history.htm (rev 0)
+++ trunk/ruby/demo/bin/history.htm 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,21 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<script type='text/javascript' language='JavaScript1.2' charset='utf-8'>
+var v = new top.Vars(top.getSearch(window));
+var fv = v.toString('$_');
+</script>
+</head>
+<body >
+<script type='text/javascript' language='JavaScript1.2' charset='utf-8'>
+document.writeln('<object id=\"utility\" name=\" \" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"" + activexDownloadURL + "#version=7,0,14,0\" width=\"100\" height=\"50\">');
+document.writeln('<param name=\"movie\" value=\"history.swf\" />');
+document.writeln('<param name=\"FlashVars\" value=\"'+fv+'&$_lconid='+top.lc_id+'\"/>');
+document.writeln('<param name=\"quality\" value=\"high\" />');
+document.writeln('<param name=\"bgcolor\" value=\"#FFFFFF\" />');
+document.writeln('<param name=\"profile\" value=\"false\" />');
+document.writeln('<embed id=\"utilityEmbed\" name=\"history.swf\" src=\"history.swf\" type=\"application/x-shockwave-flash\" flashvars=\"'+fv+'&$_lconid='+top.lc_id+'\" profile=\"false\" quality=\"high\" bgcolor=\"#FFFFFF\" width=\"100\" height=\"50\" align=\"\" pluginspage=\"" + pluginDownloadURL + "\"></embed>');
+document.writeln('</object>');
+</script>
+</body>
+</html>
\ No newline at end of file
Added: trunk/ruby/demo/bin/history.js
===================================================================
--- trunk/ruby/demo/bin/history.js (rev 0)
+++ trunk/ruby/demo/bin/history.js 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,48 @@
+// $Revision: 1.49 $
+// Vars
+Vars = function(qStr) {
+ this.numVars = 0;
+ if(qStr != null) {
+ var nameValue, name;
+ var pairs = qStr.split('&');
+ var pairLen = pairs.length;
+ for(var i = 0; i < pairLen; i++) {
+ var pair = pairs[i];
+ if( (pair.indexOf('=')!= -1) && (pair.length > 3) ) {
+ var nameValue = pair.split('=');
+ var name = nameValue[0];
+ var value = nameValue[1];
+ if(this[name] == null && name.length > 0 && value.length > 0) {
+ this[name] = value;
+ this.numVars++;
+ }
+ }
+ }
+ }
+}
+Vars.prototype.toString = function(pre) {
+ var result = '';
+ if(pre == null) { pre = ''; }
+ for(var i in this) {
+ if(this[i] != null && typeof(this[i]) != 'object' && typeof(this[i]) != 'function' && i != 'numVars') {
+ result += pre + i + '=' + this[i] + '&';
+ }
+ }
+ if(result.length > 0) result = result.substr(0, result.length-1);
+ return result;
+}
+function getSearch(wRef) {
+ var searchStr = '';
+ if(wRef.location.search.length > 1) {
+ searchStr = new String(wRef.location.search);
+ searchStr = searchStr.substring(1, searchStr.length);
+ }
+ return searchStr;
+}
+var lc_id = Math.floor(Math.random() * 100000).toString(16);
+if (this != top)
+{
+ top.Vars = Vars;
+ top.getSearch = getSearch;
+ top.lc_id = lc_id;
+}
Added: trunk/ruby/demo/bin/history.swf
===================================================================
(Binary files differ)
Property changes on: trunk/ruby/demo/bin/history.swf
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/ruby/demo/bin/playerProductInstall.swf
===================================================================
(Binary files differ)
Property changes on: trunk/ruby/demo/bin/playerProductInstall.swf
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/ruby/demo/src/AsUnitRubyDemo.mxml
===================================================================
--- trunk/ruby/demo/src/AsUnitRubyDemo.mxml (rev 0)
+++ trunk/ruby/demo/src/AsUnitRubyDemo.mxml 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
+ <mx:Label text="Hello World" />
+</mx:Application>
Added: trunk/ruby/demo/src/lifebin/display/Component.as
===================================================================
--- trunk/ruby/demo/src/lifebin/display/Component.as (rev 0)
+++ trunk/ruby/demo/src/lifebin/display/Component.as 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,10 @@
+
+package lifebin.display {
+
+ public class Component {
+
+ public function Component() {
+ super();
+ }
+ }
+}
Added: trunk/ruby/demo/src/lifebin/display/Container.as
===================================================================
--- trunk/ruby/demo/src/lifebin/display/Container.as (rev 0)
+++ trunk/ruby/demo/src/lifebin/display/Container.as 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,10 @@
+
+package lifebin.display {
+
+ public class Container {
+
+ public function Container() {
+ super();
+ }
+ }
+}
Added: trunk/ruby/demo/test/lifebin/display/ComponentTest.as
===================================================================
--- trunk/ruby/demo/test/lifebin/display/ComponentTest.as (rev 0)
+++ trunk/ruby/demo/test/lifebin/display/ComponentTest.as 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,29 @@
+package lifebin.display {
+ import asunit.framework.TestCase;
+
+ public class ComponentTest extends TestCase {
+ private var instance:Component;
+
+ public function ComponentTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ protected override function setUp():void {
+ super.setUp();
+ instance = new Component();
+ }
+
+ protected override function tearDown():void {
+ super.tearDown();
+ instance = null;
+ }
+
+ public function testInstantiated():void {
+ assertTrue("ComponentTest instantiated", instance is Component);
+ }
+
+ public function test():void {
+ assertTrue("ComponentTest default failing test", false);
+ }
+ }
+}
Added: trunk/ruby/demo/test/lifebin/display/ContainerTest.as
===================================================================
--- trunk/ruby/demo/test/lifebin/display/ContainerTest.as (rev 0)
+++ trunk/ruby/demo/test/lifebin/display/ContainerTest.as 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,31 @@
+package lifebin.display {
+ import asunit.framework.TestCase;
+
+ public class ContainerTest extends TestCase {
+ private var instance:Container;
+
+ public function ContainerTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ protected override function setUp():void {
+ super.setUp();
+ instance = new Container();
+ addChild(instance);
+ }
+
+ protected override function tearDown():void {
+ super.tearDown();
+ removeChild(instance);
+ instance = null;
+ }
+
+ public function testInstantiated():void {
+ assertTrue("ContainerTest instantiated", instance is Container);
+ }
+
+ public function test():void {
+ assertTrue("ContainerTest default failing test", false);
+ }
+ }
+}
Modified: trunk/ruby/src/asunit
===================================================================
--- trunk/ruby/src/asunit 2006-09-20 18:24:28 UTC (rev 105)
+++ trunk/ruby/src/asunit 2006-09-20 18:42:22 UTC (rev 106)
@@ -1,5 +1,7 @@
#!/bin/ruby
+$:.push('~/projects/asunit/ruby/src')
+
module AsUnit
# ------------------------------------------------------------------
# COPIED FROM RAKE! Rake module singleton methods.
@@ -46,7 +48,7 @@
end
end
-require 'asunit.rb'
+require 'asunit_application'
if __FILE__ == $0 then
AsUnit::Application.new
Deleted: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-20 18:24:28 UTC (rev 105)
+++ trunk/ruby/src/asunit.rb 2006-09-20 18:42:22 UTC (rev 106)
@@ -1,71 +0,0 @@
-#!/bin/ruby
-
-module AsUnit
- CLASS_TEMPLATE = 'Class.erb'
- TEST_TEMPLATE = 'TestCase.erb'
- PROJECT_FILE_NAME = '.asunit'
-
- require 'yaml'
- require 'optparse'
- require 'settings'
- require 'create_class'
- require 'asunit_arguments'
-
- class Application
-
- def initialize
- super
- arguments = AsUnitArguments.new(ARGV)
- project_file = get_project_file Dir.pwd
- prefs = YAML.load(project_file.read)
- settings = AsUnit::Settings.new(prefs)
-
- results = Array.new
- arguments.classnames.each { |name|
- if(name.ends_with? "Test")
- begin
- create_class(name, settings, TEST_TEMPLATE, arguments)
- rescue Exception => e
- results.push(e)
- end
- else
- begin
- create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments)
- rescue Exception => e
- results.push(e)
- end
- begin
- create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments)
- rescue Exception => e
- results.push(e)
- end
- end
- }
- if(results.length > 0)
- puts results.join("\n")
- end
- end
-
- def create_class(name, settings, template, arguments)
- begin
- class_creator = AsUnit::CreateClass.new(name, settings, template)
- class_creator.run(arguments)
- puts 'File Created at: ' + class_creator.final_path
- return nil
- rescue Exception => e
- raise e
- end
- end
-
- def get_project_file(dir)
- if(dir == '/')
- raise 'Project file not found, please create a new asunit project by typing "asunit -create-project [-src, -test, -templates]"'
- end
- Dir.chdir dir
- if(File.exists? AsUnit::PROJECT_FILE_NAME)
- return File.open(AsUnit::PROJECT_FILE_NAME, 'r')
- end
- get_project_file(File.dirname(dir))
- end
- end
-end
Added: trunk/ruby/src/asunit_application.rb
===================================================================
--- trunk/ruby/src/asunit_application.rb (rev 0)
+++ trunk/ruby/src/asunit_application.rb 2006-09-20 18:42:22 UTC (rev 106)
@@ -0,0 +1,83 @@
+#!/bin/ruby
+
+module AsUnit
+ CLASS_TEMPLATE = 'Class.erb'
+ TEST_TEMPLATE = 'TestCase.erb'
+ PROJECT_FILE_NAME = '.asunit'
+ FLEX_PROJECT_FILE_NAME = '.actionScriptProperties'
+
+ require 'yaml'
+ require 'optparse'
+ require 'settings'
+ require 'create_class'
+ require 'asunit_arguments'
+
+ class Application
+
+ def initialize
+ super
+ arguments = AsUnitArguments.new(ARGV)
+ @starting_dir = Dir.pwd
+ project_file = get_project_file(Dir.pwd, AsUnit::PROJECT_FILE_NAME)
+ if(project_file.nil?)
+ Dir.chdir @starting_dir
+ project_file = get_project_file(Dir.pwd, AsUnit::PROJECT_FILE_NAME)
+ end
+
+ if(project_file.nil?)
+ puts 'No project file found!'
+ end
+
+ prefs = YAML.load(project_file.read)
+ settings = AsUnit::Settings.new(prefs)
+
+ results = Array.new
+ arguments.classnames.each { |name|
+ if(name.ends_with? "Test")
+ begin
+ create_class(name, settings, TEST_TEMPLATE, arguments)
+ rescue Exception => e
+ results.push(e)
+ end
+ else
+ begin
+ create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments)
+ rescue Exception => e
+ results.push(e)
+ end
+ begin
+ create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments)
+ rescue Exception => e
+ results.push(e)
+ end
+ end
+ }
+ if(results.length > 0)
+ puts results.join("\n")
+ end
+ end
+
+ def create_class(name, settings, template, arguments)
+ begin
+ class_creator = AsUnit::CreateClass.new(name, settings, template)
+ class_creator.run(arguments)
+ puts 'File Created at: ' + class_creator.final_path
+ return nil
+ rescue Exception => e
+ raise e
+ end
+ end
+
+ def get_project_file(dir, project_file_name)
+ if(dir == '/')
+ return nil
+# raise 'Project file not found, please create a new asunit project by typing "asunit -create-project [-src, -test, -templates]"'
+ end
+ Dir.chdir dir
+ if(File.exists? project_file_name)
+ return File.open(project_file_name, 'r')
+ end
+ get_project_file(File.dirname(dir), project_file_name)
+ end
+ end
+end
Modified: trunk/ruby/src/asunit_arguments.rb
===================================================================
--- trunk/ruby/src/asunit_arguments.rb 2006-09-20 18:24:28 UTC (rev 105)
+++ trunk/ruby/src/asunit_arguments.rb 2006-09-20 18:42:22 UTC (rev 106)
@@ -10,6 +10,7 @@
self[:display_object] = false
self[:force] = false
self[:interfaces] = Array.new
+ self[:is_interface] = false
self[:project_file] = nil
self[:superclass] = nil
@@ -31,6 +32,10 @@
self[:interfaces].push(inf || '$')
end
+ opts.on('-I', '--is-interface', 'class being created is an interface') do
+ self[:is_interface] = true
+ end
+
opts.on('-p', '--project-file [FILE]', 'use provided project file [FILE]') do |file|
if(file.nil?)
raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
Modified: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb 2006-09-20 18:24:28 UTC (rev 105)
+++ trunk/ruby/src/template_resolver.rb 2006-09-20 18:42:22 UTC (rev 106)
@@ -21,7 +21,7 @@
def template=(template)
@template = template
- @parsed = nil
+ @parsed = nil
end
def parse
@@ -53,6 +53,10 @@
@test_cases.sort!
end
+ def class_under_test
+ return classname.sub(/Test$/, '')
+ end
+
def display_object?
return @display_object
end
Modified: trunk/ruby/src/templates/TestCase.erb
===================================================================
--- trunk/ruby/src/templates/TestCase.erb 2006-09-20 18:24:28 UTC (rev 105)
+++ trunk/ruby/src/templates/TestCase.erb 2006-09-20 18:42:22 UTC (rev 106)
@@ -2,7 +2,7 @@
import asunit.framework.TestCase;
public class <%= classname %> extends TestCase {
- private var instance:<%= classname %>;
+ private var instance:<%= class_under_test %>;
public function <%= classname %>(testMethod:String = null) {
super(testMethod);
@@ -10,7 +10,7 @@
protected override function setUp():void {
super.setUp();
- instance = new <%= classname %>();<%
+ instance = new <%= class_under_test %>();<%
if display_object? %>
addChild(instance);<% end %>
}
@@ -23,7 +23,7 @@
}
public function testInstantiated():void {
- assertTrue("<%= classname %> instantiated", instance is <%= classname %>);
+ assertTrue("<%= classname %> instantiated", instance is <%= class_under_test %>);
}
public function test():void {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-20 18:24:39
|
Revision: 105
http://svn.sourceforge.net/asunit/?rev=105&view=rev
Author: lukebayes
Date: 2006-09-20 11:24:28 -0700 (Wed, 20 Sep 2006)
Log Message:
-----------
moving test classes into their own directory
Added Paths:
-----------
trunk/framework-test/
trunk/framework-test/as3/
trunk/framework-test/as3/asunit/
trunk/framework-test/as3/asunit/framework/
trunk/framework-test/as3/asunit/framework/AssertTest.as
trunk/framework-test/as3/asunit/framework/MockData.xml
trunk/framework-test/as3/asunit/framework/TestCaseMock.as
trunk/framework-test/as3/asunit/framework/TestCaseTest.as
trunk/framework-test/as3/asunit/framework/TestFailureTest.as
trunk/framework-test/as3/asunit/framework/VisualTestCaseTest.as
trunk/framework-test/as3/asunit/runner/
trunk/framework-test/as3/asunit/runner/BaseTestRunnerMock.as
trunk/framework-test/as3/asunit/textui/
trunk/framework-test/as3/asunit/textui/TestRunnerTest.as
trunk/framework-test/as3/asunit/textui/TestRunnerTestCaseMock.as
trunk/framework-test/as3/asunit/util/
trunk/framework-test/as3/asunit/util/ArrayIteratorTest.as
Added: trunk/framework-test/as3/asunit/framework/AssertTest.as
===================================================================
--- trunk/framework-test/as3/asunit/framework/AssertTest.as (rev 0)
+++ trunk/framework-test/as3/asunit/framework/AssertTest.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,187 @@
+package asunit.framework {
+
+ import flash.errors.IllegalOperationError;
+ import flash.display.Sprite;
+
+ public class AssertTest extends TestCase {
+
+ public function AssertTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ public function testAssertTrue():void {
+ assertTrue(true);
+ }
+
+ public function testAssertFalse():void {
+ assertFalse(false);
+ }
+
+ public function testAssertFalseWithMessage():void {
+ assertFalse("message", false);
+ }
+
+ public function testAssertTrueWithMessage():void {
+ assertTrue("message", true);
+ }
+
+ public function testAssertTrueFailure():void {
+ try {
+ assertTrue(false);
+ }
+ catch(e:Error) {
+ return;
+ }
+ assertTrue("assertTrue(false) should have failed but didn't", false);
+ }
+
+ public function testAssertTrueMessage():void {
+ assertTrue("asertTrue with message", true);
+ }
+
+ public function testAssertTrueMessageFailure():void {
+ try {
+ assertTrue("trueMessage", false);
+ }
+ catch(e:Error) {
+ return;
+ }
+ assertTrue("assertTrue('message', false) should have failed but didn't", false);
+ }
+
+ public function testFail():void {
+ try {
+ Assert.fail("this shouldn't be caught");
+ }
+ catch(e:Error) {
+ assertTrue("passed", true);
+ return;
+ }
+ fail("failure should be thrown");
+ }
+
+ public function testAssertEqualsSimple():void {
+ var obj1:Object = new Object();
+ assertEquals(obj1, obj1);
+ }
+
+ public function testEqualsMethod():void {
+ var obj1:Object = new Object();
+ obj1.equals = function():Boolean {
+ return true;
+ }
+
+ var obj2:Object = new Object();
+ obj2.equals = function():Boolean {
+ return true;
+ }
+ assertEquals(obj1, obj2);
+ }
+
+ public function testEqualsSimpleMessage():void {
+ var obj1:Object = new Object();
+ assertEquals("message", obj1, obj1);
+ }
+
+ public function testEqualsFailure():void {
+ var obj1:Object = new Object();
+ var obj2:Object = new Object();
+ try {
+ assertEquals(obj1, obj2);
+ }
+ catch(e:Error) {
+ return;
+ }
+ fail("obj1 does not equal obj2");
+ }
+
+ public function testEqualsSimpleMessageFailure():void {
+ try {
+ var obj1:Object = new Object();
+ var obj2:Object = new Object();
+ assertEquals("message", obj1, obj2);
+ }
+ catch(e:Error) {
+ return;
+ }
+ fail("obj1 does not equal obj2 with message");
+ }
+
+ public function testNull():void {
+ assertNull(null);
+ }
+
+ public function testNullMessage():void {
+ assertNull("message", null);
+ }
+
+ public function testNullFailure():void {
+ var obj:Object = new Object();
+ try {
+ assertNull("message", obj);
+ }
+ catch(e:Error) {
+ return;
+ }
+ fail("null failure");
+ }
+
+ public function testNotNull():void {
+ var obj:Object = new Object();
+ assertNotNull(obj);
+ }
+
+ public function testNotNullFailure():void {
+ try {
+ assertNotNull(null);
+ }
+ catch(e:Error) {
+ return;
+ }
+ fail("not null failed");
+ }
+
+ public function testNotNullMessage():void {
+ var obj:Object = new Object();
+ assertNotNull("not null", obj);
+ }
+
+ public function testSame():void {
+ var obj:Object = new Object();
+ assertSame(obj, obj);
+ }
+
+ public function testSameFailure():void {
+ try {
+ assertSame(new Object(), new Object());
+ }
+ catch(e:Error) {
+ return;
+ }
+ fail("same failure");
+ }
+
+ public function testNotSame():void {
+ var obj1:Object = new Object();
+ var obj2:Object = new Object();
+ assertNotSame(obj1, obj2);
+ }
+
+ public function testNotSameFailure():void {
+ var obj1:Object = new Object();
+ try {
+ assertNotSame(obj1, obj1);
+ }
+ catch(e:Error) {
+ return;
+ }
+ fail("not same failure");
+ }
+
+ public function testNotSameMessage():void {
+ var obj1:Object = new Object();
+ var obj2:Object = new Object();
+ assertNotSame("not same message", obj1, obj2);
+ }
+ }
+}
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/framework/MockData.xml
===================================================================
--- trunk/framework-test/as3/asunit/framework/MockData.xml (rev 0)
+++ trunk/framework-test/as3/asunit/framework/MockData.xml 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,8 @@
+<books>
+ <book publisher="Addison-Wesley" name="Design Patterns" />
+ <book publisher="Addison-Wesley" name="The Pragmatic Programmer" />
+ <book publisher="Addison-Wesley" name="Test Driven Development" />
+ <book publisher="Addison-Wesley" name="Refactoring to Patterns" />
+ <book publisher="O'Reilly Media" name="The Cathedral & the Bazaar" />
+ <book publisher="O'Reilly Media" name="Unit Test Frameworks" />
+</books>
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/framework/TestCaseMock.as
===================================================================
--- trunk/framework-test/as3/asunit/framework/TestCaseMock.as (rev 0)
+++ trunk/framework-test/as3/asunit/framework/TestCaseMock.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,24 @@
+package asunit.framework {
+
+ public class TestCaseMock extends TestCase {
+ public var testMethod1Run:Boolean;
+ public var testMethod2Run:Boolean;
+ public var testMethod3Run:Boolean;
+
+ public function TestCaseMock(methodName:String = null) {
+ super(methodName);
+ }
+
+ public function testMethod1():void {
+ testMethod1Run = true;
+ }
+
+ public function testMethod2():void {
+ testMethod2Run = true;
+ }
+
+ public function testMethod3():void {
+ testMethod3Run = true;
+ }
+ }
+}
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/framework/TestCaseTest.as
===================================================================
--- trunk/framework-test/as3/asunit/framework/TestCaseTest.as (rev 0)
+++ trunk/framework-test/as3/asunit/framework/TestCaseTest.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,45 @@
+package asunit.framework {
+
+ public class TestCaseTest extends TestCase {
+
+ public function TestCaseTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ public function testInstantiated():void {
+ assertTrue(this is TestCase);
+ }
+
+ public function testCustomConstructor():void {
+ var mock:TestCaseMock = new TestCaseMock("testMethod1");
+ mock.run();
+ assertTrue("testMethod1Run", mock.testMethod1Run);
+ assertFalse("testMethod2Run", mock.testMethod2Run);
+ assertFalse("testMethod3Run", mock.testMethod3Run);
+ }
+
+ public function testCustomConstructor2():void {
+ var mock:TestCaseMock = new TestCaseMock("testMethod1, testMethod3");
+ mock.run();
+ assertTrue("testMethod1Run", mock.testMethod1Run);
+ assertFalse("testMethod2Run", mock.testMethod2Run);
+ assertTrue("testMethod3Run", mock.testMethod3Run);
+ }
+
+ public function testCustomConstructor3():void {
+ var mock:TestCaseMock = new TestCaseMock("testMethod1,testMethod3");
+ mock.run();
+ assertTrue("testMethod1Run", mock.testMethod1Run);
+ assertFalse("testMethod2Run", mock.testMethod2Run);
+ assertTrue("testMethod3Run", mock.testMethod3Run);
+ }
+
+ public function testCustomConstructor4():void {
+ var mock:TestCaseMock = new TestCaseMock("testMethod1, testMethod2,testMethod3");
+ mock.run();
+ assertTrue("testMethod1Run", mock.testMethod1Run);
+ assertTrue("testMethod2Run", mock.testMethod2Run);
+ assertTrue("testMethod3Run", mock.testMethod3Run);
+ }
+ }
+}
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/framework/TestFailureTest.as
===================================================================
--- trunk/framework-test/as3/asunit/framework/TestFailureTest.as (rev 0)
+++ trunk/framework-test/as3/asunit/framework/TestFailureTest.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,14 @@
+package asunit.framework {
+
+ public class TestFailureTest extends TestCase {
+
+ public function TestFailureTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ public function testInstantiated():void {
+ var failure:TestFailure = new TestFailure(this, new Error());
+ assertTrue(failure is TestFailure);
+ }
+ }
+}
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/framework/VisualTestCaseTest.as
===================================================================
--- trunk/framework-test/as3/asunit/framework/VisualTestCaseTest.as (rev 0)
+++ trunk/framework-test/as3/asunit/framework/VisualTestCaseTest.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,43 @@
+package asunit.framework {
+ import flash.display.Sprite;
+
+ public class VisualTestCaseTest extends TestCase {
+ private var instance:Sprite;
+
+ public function VisualTestCaseTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ protected override function setUp():void {
+ instance = new Sprite();
+ addChild(instance);
+ }
+
+ protected override function tearDown():void {
+ removeChild(instance);
+ }
+
+ public function testInstance():void {
+ assertTrue(instance is Sprite);
+ }
+
+ public function testSize():void {
+ assertTrue(instance.width == 0);
+ assertTrue(instance.height == 0);
+ }
+
+ public function testDrawnSize():void {
+ instance.graphics.beginFill(0xFF0000);
+ instance.graphics.drawRect(0, 0, 10, 20);
+
+ assertTrue(instance.width == 10);
+ assertTrue(instance.height == 20);
+ }
+
+ public function testSecondSize():void {
+ assertTrue(instance.width == 0);
+ assertTrue(instance.height == 0);
+ }
+
+ }
+}
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/runner/BaseTestRunnerMock.as
===================================================================
--- trunk/framework-test/as3/asunit/runner/BaseTestRunnerMock.as (rev 0)
+++ trunk/framework-test/as3/asunit/runner/BaseTestRunnerMock.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,6 @@
+package asunit.runner {
+
+ public class BaseTestRunnerMock extends BaseTestRunner {
+
+ }
+}
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/textui/TestRunnerTest.as
===================================================================
--- trunk/framework-test/as3/asunit/textui/TestRunnerTest.as (rev 0)
+++ trunk/framework-test/as3/asunit/textui/TestRunnerTest.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,55 @@
+package asunit.textui {
+ import asunit.framework.TestCase;
+ import flash.utils.setTimeout;
+ import flash.events.Event;
+ import flash.errors.IllegalOperationError;
+
+ public class TestRunnerTest extends TestCase {
+ private var instance:TestRunner;
+
+ public function TestRunnerTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ protected override function setUp():void {
+ instance = new TestRunner();
+ addChild(instance);
+ }
+
+ protected override function tearDown():void {
+ removeChild(instance);
+ instance = null;
+ }
+
+ public function testInstantiated():void {
+ assertTrue("TestRunner instantiated with: " + instance, instance is TestRunner);
+ }
+
+ public function testAsync():void {
+ var handler:Function = addAsync(asyncCompleteHandler);
+ setTimeout(handler, 400, new Event(Event.ACTIVATE));
+ }
+
+ public function asyncCompleteHandler(event:Event):void {
+// throw new IllegalOperationError("what the heck?");
+ }
+
+ public function testAsync2():void {
+ var handler:Function = addAsync(async2CompleteHandler);
+ setTimeout(handler, 40);
+ }
+
+ public function async2CompleteHandler():void {
+// fail("test async complete failed");
+ }
+
+ public function testSomethingComplete():void {
+ }
+
+ public function testSomethingElse():void {
+ }
+
+ public function testAnotherThing():void {
+ }
+ }
+}
Added: trunk/framework-test/as3/asunit/textui/TestRunnerTestCaseMock.as
===================================================================
--- trunk/framework-test/as3/asunit/textui/TestRunnerTestCaseMock.as (rev 0)
+++ trunk/framework-test/as3/asunit/textui/TestRunnerTestCaseMock.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,30 @@
+package asunit.textui {
+
+ import asunit.framework.TestCase;
+
+ public class TestRunnerTestCaseMock extends TestCase {
+ public var testMethod1Run:Boolean;
+ public var testMethod2Run:Boolean;
+ public var testMethod3Run:Boolean;
+
+ public function TestRunnerTestCaseMock(methodName:String = null) {
+ super(methodName);
+ }
+
+ public function testMethod1():void {
+ testMethod1Run = true;
+ }
+
+ public function testMethod1Completed():void {
+ trace("testMethod1Handler called");
+ }
+
+ public function testMethod2():void {
+ testMethod2Run = true;
+ }
+
+ public function testMethod3():void {
+ testMethod3Run = true;
+ }
+ }
+}
\ No newline at end of file
Added: trunk/framework-test/as3/asunit/util/ArrayIteratorTest.as
===================================================================
--- trunk/framework-test/as3/asunit/util/ArrayIteratorTest.as (rev 0)
+++ trunk/framework-test/as3/asunit/util/ArrayIteratorTest.as 2006-09-20 18:24:28 UTC (rev 105)
@@ -0,0 +1,65 @@
+package asunit.util {
+ import asunit.framework.TestCase;
+
+ public class ArrayIteratorTest extends TestCase {
+ private var itr:ArrayIterator;
+
+ public function ArrayIteratorTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ protected override function setUp():void {
+ itr = new ArrayIterator(getSimpleArray(5));
+ }
+
+ private function getSimpleArray(count:Number):Array {
+ var arr:Array = new Array();
+ for(var i:Number = 0; i < count; i++) {
+ arr.push("item-" + i);
+ }
+ return arr;
+ }
+
+ protected override function tearDown():void {
+ itr = null;
+ }
+
+ public function testInstantiated():void {
+ assertTrue("ArrayIterator instantiated", itr is ArrayIterator);
+ }
+
+ public function testHasNext():void {
+ assertTrue(itr.hasNext());
+ }
+
+ public function testNext():void {
+ assertEquals("item-0", itr.next());
+ }
+
+ public function testNextTwice():void {
+ assertEquals("item-0", itr.next());
+ assertEquals("item-1", itr.next());
+ }
+
+ public function testLast():void {
+ assertTrue(itr.hasNext());
+ assertEquals("item-0", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-1", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-2", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-3", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-4", itr.next());
+ assertFalse(itr.hasNext());
+ }
+
+ public function testReset():void {
+ testLast();
+ itr.reset();
+ assertTrue(itr.hasNext());
+ assertEquals("item-0", itr.next());
+ }
+ }
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-20 18:21:15
|
Revision: 104
http://svn.sourceforge.net/asunit/?rev=104&view=rev
Author: lukebayes
Date: 2006-09-20 11:20:59 -0700 (Wed, 20 Sep 2006)
Log Message:
-----------
moving test classes to framework-test
Removed Paths:
-------------
trunk/framework/as3/AllTests.as
trunk/framework/as3/asunit/framework/AllTests.as
trunk/framework/as3/asunit/framework/AssertTest.as
trunk/framework/as3/asunit/framework/MockData.xml
trunk/framework/as3/asunit/framework/TestCaseMock.as
trunk/framework/as3/asunit/framework/TestCaseTest.as
trunk/framework/as3/asunit/framework/TestFailureTest.as
trunk/framework/as3/asunit/framework/VisualTestCaseTest.as
trunk/framework/as3/asunit/runner/BaseTestRunnerMock.as
trunk/framework/as3/asunit/textui/AllTests.as
trunk/framework/as3/asunit/textui/TestRunnerTest.as
trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as
trunk/framework/as3/asunit/util/AllTests.as
trunk/framework/as3/asunit/util/ArrayIteratorTest.as
Deleted: trunk/framework/as3/AllTests.as
===================================================================
--- trunk/framework/as3/AllTests.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/AllTests.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,11 +0,0 @@
-package {
- import asunit.framework.TestSuite;
- import asunit.AllTests;
-
- public class AllTests extends TestSuite {
-
- public function AllTests() {
- addTest(new asunit.AllTests());
- }
- }
-}
Deleted: trunk/framework/as3/asunit/framework/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/framework/AllTests.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/framework/AllTests.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,17 +0,0 @@
-package asunit.framework {
- import asunit.framework.TestSuite;
- import asunit.framework.AssertTest;
- import asunit.framework.TestCaseTest;
- import asunit.framework.TestFailureTest;
- import asunit.framework.VisualTestCaseTest;
-
- public class AllTests extends TestSuite {
-
- public function AllTests() {
- addTest(new asunit.framework.AssertTest());
- addTest(new asunit.framework.TestCaseTest());
- addTest(new asunit.framework.TestFailureTest());
- addTest(new asunit.framework.VisualTestCaseTest());
- }
- }
-}
Deleted: trunk/framework/as3/asunit/framework/AssertTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,187 +0,0 @@
-package asunit.framework {
-
- import flash.errors.IllegalOperationError;
- import flash.display.Sprite;
-
- public class AssertTest extends TestCase {
-
- public function AssertTest(testMethod:String = null) {
- super(testMethod);
- }
-
- public function testAssertTrue():void {
- assertTrue(true);
- }
-
- public function testAssertFalse():void {
- assertFalse(false);
- }
-
- public function testAssertFalseWithMessage():void {
- assertFalse("message", false);
- }
-
- public function testAssertTrueWithMessage():void {
- assertTrue("message", true);
- }
-
- public function testAssertTrueFailure():void {
- try {
- assertTrue(false);
- }
- catch(e:Error) {
- return;
- }
- assertTrue("assertTrue(false) should have failed but didn't", false);
- }
-
- public function testAssertTrueMessage():void {
- assertTrue("asertTrue with message", true);
- }
-
- public function testAssertTrueMessageFailure():void {
- try {
- assertTrue("trueMessage", false);
- }
- catch(e:Error) {
- return;
- }
- assertTrue("assertTrue('message', false) should have failed but didn't", false);
- }
-
- public function testFail():void {
- try {
- Assert.fail("this shouldn't be caught");
- }
- catch(e:Error) {
- assertTrue("passed", true);
- return;
- }
- fail("failure should be thrown");
- }
-
- public function testAssertEqualsSimple():void {
- var obj1:Object = new Object();
- assertEquals(obj1, obj1);
- }
-
- public function testEqualsMethod():void {
- var obj1:Object = new Object();
- obj1.equals = function():Boolean {
- return true;
- }
-
- var obj2:Object = new Object();
- obj2.equals = function():Boolean {
- return true;
- }
- assertEquals(obj1, obj2);
- }
-
- public function testEqualsSimpleMessage():void {
- var obj1:Object = new Object();
- assertEquals("message", obj1, obj1);
- }
-
- public function testEqualsFailure():void {
- var obj1:Object = new Object();
- var obj2:Object = new Object();
- try {
- assertEquals(obj1, obj2);
- }
- catch(e:Error) {
- return;
- }
- fail("obj1 does not equal obj2");
- }
-
- public function testEqualsSimpleMessageFailure():void {
- try {
- var obj1:Object = new Object();
- var obj2:Object = new Object();
- assertEquals("message", obj1, obj2);
- }
- catch(e:Error) {
- return;
- }
- fail("obj1 does not equal obj2 with message");
- }
-
- public function testNull():void {
- assertNull(null);
- }
-
- public function testNullMessage():void {
- assertNull("message", null);
- }
-
- public function testNullFailure():void {
- var obj:Object = new Object();
- try {
- assertNull("message", obj);
- }
- catch(e:Error) {
- return;
- }
- fail("null failure");
- }
-
- public function testNotNull():void {
- var obj:Object = new Object();
- assertNotNull(obj);
- }
-
- public function testNotNullFailure():void {
- try {
- assertNotNull(null);
- }
- catch(e:Error) {
- return;
- }
- fail("not null failed");
- }
-
- public function testNotNullMessage():void {
- var obj:Object = new Object();
- assertNotNull("not null", obj);
- }
-
- public function testSame():void {
- var obj:Object = new Object();
- assertSame(obj, obj);
- }
-
- public function testSameFailure():void {
- try {
- assertSame(new Object(), new Object());
- }
- catch(e:Error) {
- return;
- }
- fail("same failure");
- }
-
- public function testNotSame():void {
- var obj1:Object = new Object();
- var obj2:Object = new Object();
- assertNotSame(obj1, obj2);
- }
-
- public function testNotSameFailure():void {
- var obj1:Object = new Object();
- try {
- assertNotSame(obj1, obj1);
- }
- catch(e:Error) {
- return;
- }
- fail("not same failure");
- }
-
- public function testNotSameMessage():void {
- var obj1:Object = new Object();
- var obj2:Object = new Object();
- assertNotSame("not same message", obj1, obj2);
- }
- }
-}
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/framework/MockData.xml
===================================================================
--- trunk/framework/as3/asunit/framework/MockData.xml 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/framework/MockData.xml 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,8 +0,0 @@
-<books>
- <book publisher="Addison-Wesley" name="Design Patterns" />
- <book publisher="Addison-Wesley" name="The Pragmatic Programmer" />
- <book publisher="Addison-Wesley" name="Test Driven Development" />
- <book publisher="Addison-Wesley" name="Refactoring to Patterns" />
- <book publisher="O'Reilly Media" name="The Cathedral & the Bazaar" />
- <book publisher="O'Reilly Media" name="Unit Test Frameworks" />
-</books>
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/framework/TestCaseMock.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCaseMock.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/framework/TestCaseMock.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,24 +0,0 @@
-package asunit.framework {
-
- public class TestCaseMock extends TestCase {
- public var testMethod1Run:Boolean;
- public var testMethod2Run:Boolean;
- public var testMethod3Run:Boolean;
-
- public function TestCaseMock(methodName:String = null) {
- super(methodName);
- }
-
- public function testMethod1():void {
- testMethod1Run = true;
- }
-
- public function testMethod2():void {
- testMethod2Run = true;
- }
-
- public function testMethod3():void {
- testMethod3Run = true;
- }
- }
-}
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/framework/TestCaseTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,45 +0,0 @@
-package asunit.framework {
-
- public class TestCaseTest extends TestCase {
-
- public function TestCaseTest(testMethod:String = null) {
- super(testMethod);
- }
-
- public function testInstantiated():void {
- assertTrue(this is TestCase);
- }
-
- public function testCustomConstructor():void {
- var mock:TestCaseMock = new TestCaseMock("testMethod1");
- mock.run();
- assertTrue("testMethod1Run", mock.testMethod1Run);
- assertFalse("testMethod2Run", mock.testMethod2Run);
- assertFalse("testMethod3Run", mock.testMethod3Run);
- }
-
- public function testCustomConstructor2():void {
- var mock:TestCaseMock = new TestCaseMock("testMethod1, testMethod3");
- mock.run();
- assertTrue("testMethod1Run", mock.testMethod1Run);
- assertFalse("testMethod2Run", mock.testMethod2Run);
- assertTrue("testMethod3Run", mock.testMethod3Run);
- }
-
- public function testCustomConstructor3():void {
- var mock:TestCaseMock = new TestCaseMock("testMethod1,testMethod3");
- mock.run();
- assertTrue("testMethod1Run", mock.testMethod1Run);
- assertFalse("testMethod2Run", mock.testMethod2Run);
- assertTrue("testMethod3Run", mock.testMethod3Run);
- }
-
- public function testCustomConstructor4():void {
- var mock:TestCaseMock = new TestCaseMock("testMethod1, testMethod2,testMethod3");
- mock.run();
- assertTrue("testMethod1Run", mock.testMethod1Run);
- assertTrue("testMethod2Run", mock.testMethod2Run);
- assertTrue("testMethod3Run", mock.testMethod3Run);
- }
- }
-}
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/framework/TestFailureTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestFailureTest.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/framework/TestFailureTest.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,14 +0,0 @@
-package asunit.framework {
-
- public class TestFailureTest extends TestCase {
-
- public function TestFailureTest(testMethod:String = null) {
- super(testMethod);
- }
-
- public function testInstantiated():void {
- var failure:TestFailure = new TestFailure(this, new Error());
- assertTrue(failure is TestFailure);
- }
- }
-}
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/framework/VisualTestCaseTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/VisualTestCaseTest.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/framework/VisualTestCaseTest.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,43 +0,0 @@
-package asunit.framework {
- import flash.display.Sprite;
-
- public class VisualTestCaseTest extends TestCase {
- private var instance:Sprite;
-
- public function VisualTestCaseTest(testMethod:String = null) {
- super(testMethod);
- }
-
- protected override function setUp():void {
- instance = new Sprite();
- addChild(instance);
- }
-
- protected override function tearDown():void {
- removeChild(instance);
- }
-
- public function testInstance():void {
- assertTrue(instance is Sprite);
- }
-
- public function testSize():void {
- assertTrue(instance.width == 0);
- assertTrue(instance.height == 0);
- }
-
- public function testDrawnSize():void {
- instance.graphics.beginFill(0xFF0000);
- instance.graphics.drawRect(0, 0, 10, 20);
-
- assertTrue(instance.width == 10);
- assertTrue(instance.height == 20);
- }
-
- public function testSecondSize():void {
- assertTrue(instance.width == 0);
- assertTrue(instance.height == 0);
- }
-
- }
-}
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/runner/BaseTestRunnerMock.as
===================================================================
--- trunk/framework/as3/asunit/runner/BaseTestRunnerMock.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/runner/BaseTestRunnerMock.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,6 +0,0 @@
-package asunit.runner {
-
- public class BaseTestRunnerMock extends BaseTestRunner {
-
- }
-}
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/textui/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/textui/AllTests.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/textui/AllTests.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,11 +0,0 @@
-package asunit.textui {
- import asunit.framework.TestSuite;
- import asunit.textui.TestRunnerTest;
-
- public class AllTests extends TestSuite {
-
- public function AllTests() {
- addTest(new asunit.textui.TestRunnerTest());
- }
- }
-}
Deleted: trunk/framework/as3/asunit/textui/TestRunnerTest.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,55 +0,0 @@
-package asunit.textui {
- import asunit.framework.TestCase;
- import flash.utils.setTimeout;
- import flash.events.Event;
- import flash.errors.IllegalOperationError;
-
- public class TestRunnerTest extends TestCase {
- private var instance:TestRunner;
-
- public function TestRunnerTest(testMethod:String = null) {
- super(testMethod);
- }
-
- protected override function setUp():void {
- instance = new TestRunner();
- addChild(instance);
- }
-
- protected override function tearDown():void {
- removeChild(instance);
- instance = null;
- }
-
- public function testInstantiated():void {
- assertTrue("TestRunner instantiated with: " + instance, instance is TestRunner);
- }
-
- public function testAsync():void {
- var handler:Function = addAsync(asyncCompleteHandler);
- setTimeout(handler, 400, new Event(Event.ACTIVATE));
- }
-
- public function asyncCompleteHandler(event:Event):void {
-// throw new IllegalOperationError("what the heck?");
- }
-
- public function testAsync2():void {
- var handler:Function = addAsync(async2CompleteHandler);
- setTimeout(handler, 40);
- }
-
- public function async2CompleteHandler():void {
-// fail("test async complete failed");
- }
-
- public function testSomethingComplete():void {
- }
-
- public function testSomethingElse():void {
- }
-
- public function testAnotherThing():void {
- }
- }
-}
Deleted: trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,30 +0,0 @@
-package asunit.textui {
-
- import asunit.framework.TestCase;
-
- public class TestRunnerTestCaseMock extends TestCase {
- public var testMethod1Run:Boolean;
- public var testMethod2Run:Boolean;
- public var testMethod3Run:Boolean;
-
- public function TestRunnerTestCaseMock(methodName:String = null) {
- super(methodName);
- }
-
- public function testMethod1():void {
- testMethod1Run = true;
- }
-
- public function testMethod1Completed():void {
- trace("testMethod1Handler called");
- }
-
- public function testMethod2():void {
- testMethod2Run = true;
- }
-
- public function testMethod3():void {
- testMethod3Run = true;
- }
- }
-}
\ No newline at end of file
Deleted: trunk/framework/as3/asunit/util/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/util/AllTests.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/util/AllTests.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,11 +0,0 @@
-package asunit.util {
- import asunit.framework.TestSuite;
- import asunit.util.ArrayIteratorTest;
-
- public class AllTests extends TestSuite {
-
- public function AllTests() {
- addTest(new asunit.util.ArrayIteratorTest());
- }
- }
-}
Deleted: trunk/framework/as3/asunit/util/ArrayIteratorTest.as
===================================================================
--- trunk/framework/as3/asunit/util/ArrayIteratorTest.as 2006-09-20 18:16:23 UTC (rev 103)
+++ trunk/framework/as3/asunit/util/ArrayIteratorTest.as 2006-09-20 18:20:59 UTC (rev 104)
@@ -1,65 +0,0 @@
-package asunit.util {
- import asunit.framework.TestCase;
-
- public class ArrayIteratorTest extends TestCase {
- private var itr:ArrayIterator;
-
- public function ArrayIteratorTest(testMethod:String = null) {
- super(testMethod);
- }
-
- protected override function setUp():void {
- itr = new ArrayIterator(getSimpleArray(5));
- }
-
- private function getSimpleArray(count:Number):Array {
- var arr:Array = new Array();
- for(var i:Number = 0; i < count; i++) {
- arr.push("item-" + i);
- }
- return arr;
- }
-
- protected override function tearDown():void {
- itr = null;
- }
-
- public function testInstantiated():void {
- assertTrue("ArrayIterator instantiated", itr is ArrayIterator);
- }
-
- public function testHasNext():void {
- assertTrue(itr.hasNext());
- }
-
- public function testNext():void {
- assertEquals("item-0", itr.next());
- }
-
- public function testNextTwice():void {
- assertEquals("item-0", itr.next());
- assertEquals("item-1", itr.next());
- }
-
- public function testLast():void {
- assertTrue(itr.hasNext());
- assertEquals("item-0", itr.next());
- assertTrue(itr.hasNext());
- assertEquals("item-1", itr.next());
- assertTrue(itr.hasNext());
- assertEquals("item-2", itr.next());
- assertTrue(itr.hasNext());
- assertEquals("item-3", itr.next());
- assertTrue(itr.hasNext());
- assertEquals("item-4", itr.next());
- assertFalse(itr.hasNext());
- }
-
- public function testReset():void {
- testLast();
- itr.reset();
- assertTrue(itr.hasNext());
- assertEquals("item-0", itr.next());
- }
- }
-}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-20 18:16:27
|
Revision: 103
http://svn.sourceforge.net/asunit/?rev=103&view=rev
Author: lukebayes
Date: 2006-09-20 11:16:23 -0700 (Wed, 20 Sep 2006)
Log Message:
-----------
updated ignore props
Property Changed:
----------------
trunk/framework/as3/
Property changes on: trunk/framework/as3
___________________________________________________________________
Name: svn:ignore
+ bin
html-template
.settings
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 22:24:00
|
Revision: 102
http://svn.sourceforge.net/asunit/?rev=102&view=rev
Author: lukebayes
Date: 2006-09-19 15:23:56 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
adding test suites
Added Paths:
-----------
trunk/framework/as3/asunit/textui/AllTests.as
Added: trunk/framework/as3/asunit/textui/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/textui/AllTests.as (rev 0)
+++ trunk/framework/as3/asunit/textui/AllTests.as 2006-09-19 22:23:56 UTC (rev 102)
@@ -0,0 +1,11 @@
+package asunit.textui {
+ import asunit.framework.TestSuite;
+ import asunit.textui.TestRunnerTest;
+
+ public class AllTests extends TestSuite {
+
+ public function AllTests() {
+ addTest(new asunit.textui.TestRunnerTest());
+ }
+ }
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 22:23:05
|
Revision: 101
http://svn.sourceforge.net/asunit/?rev=101&view=rev
Author: lukebayes
Date: 2006-09-19 15:22:59 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
working toward async test methods, seems like it might be working.
Modified Paths:
--------------
trunk/framework/as3/asunit/framework/TestCase.as
trunk/framework/as3/asunit/textui/TestRunnerTest.as
Modified: trunk/framework/as3/asunit/framework/TestCase.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 22:11:36 UTC (rev 100)
+++ trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 22:22:59 UTC (rev 101)
@@ -9,6 +9,7 @@
import asunit.util.ArrayIterator;
import flash.net.getClassByAlias;
import flash.utils.setTimeout;
+ import flash.utils.clearTimeout;
/**
* A test case defines the fixture to run multiple tests. To define a test case<br>
@@ -78,11 +79,13 @@
/**
* the name of the test case
*/
+ protected var DEFAULT_TIMEOUT:int = 500;
protected var fName:String;
protected var result:TestResult;
protected var testMethods:Array;
protected var isComplete:Boolean;
protected var context:DisplayObjectContainer;
+ private var asyncMethodTimeoutId:Number;
private var currentMethod:String;
private var runSingle:Boolean;
private var methodIterator:Iterator;
@@ -172,9 +175,7 @@
try {
while(itr.hasNext()) {
name = String(itr.next());
- trace("name: " + name);
if(!runMethod(name)) {
- trace("BLOCKING EXECUTION ON : " + name);
break;
}
}
@@ -182,8 +183,6 @@
finally {
if(!runSingle) {
if(!itr.hasNext() && !methodIsAsynchronous) {
- trace("--------------");
- trace("INSIDE THE END");
cleanUp();
result.endTest(this);
isComplete = true;
@@ -207,6 +206,10 @@
private function runMethod(methodName:String):Boolean {
try {
+ if(!isNaN(asyncMethodTimeoutId)) {
+ clearTimeout(asyncMethodTimeoutId);
+ asyncMethodTimeoutId = NaN;
+ }
setUp();
currentMethod = methodName;
try {
@@ -277,6 +280,7 @@
protected function addAsync(handler:Function):Function {
methodIsAsynchronous = true;
var context:Object = this;
+ asyncMethodTimeoutId = setTimeout(timeoutHandler, DEFAULT_TIMEOUT);
return function(args:*):* {
try {
handler.apply(context, arguments);
@@ -292,6 +296,12 @@
}
}
+ protected function timeoutHandler():void {
+ result.addError(this, new IllegalOperationError("TestCase.DEFAULT_TIMEOUT (" + DEFAULT_TIMEOUT + "ms) exceeded on an asynchronous test method."));
+ methodIsAsynchronous = false;
+ runBare();
+ }
+
protected function addChild(child:DisplayObject):DisplayObject {
return getContext().addChild(child);
}
Modified: trunk/framework/as3/asunit/textui/TestRunnerTest.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 22:11:36 UTC (rev 100)
+++ trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 22:22:59 UTC (rev 101)
@@ -27,14 +27,22 @@
public function testAsync():void {
var handler:Function = addAsync(asyncCompleteHandler);
- setTimeout(handler, 1000, new Event(Event.ACTIVATE));
+ setTimeout(handler, 400, new Event(Event.ACTIVATE));
}
public function asyncCompleteHandler(event:Event):void {
-// throw new IllegalOperationError("what the fuck?");
- fail("test async complete failed");
+// throw new IllegalOperationError("what the heck?");
}
+ public function testAsync2():void {
+ var handler:Function = addAsync(async2CompleteHandler);
+ setTimeout(handler, 40);
+ }
+
+ public function async2CompleteHandler():void {
+// fail("test async complete failed");
+ }
+
public function testSomethingComplete():void {
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 22:11:43
|
Revision: 100
http://svn.sourceforge.net/asunit/?rev=100&view=rev
Author: lukebayes
Date: 2006-09-19 15:11:36 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
working toward async test methods, almost there
Modified Paths:
--------------
trunk/framework/as3/AsUnitTestRunner.as
trunk/framework/as3/asunit/framework/Assert.as
trunk/framework/as3/asunit/framework/AssertTest.as
trunk/framework/as3/asunit/framework/TestCase.as
trunk/framework/as3/asunit/textui/TestRunnerTest.as
Modified: trunk/framework/as3/AsUnitTestRunner.as
===================================================================
--- trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 21:40:51 UTC (rev 99)
+++ trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 22:11:36 UTC (rev 100)
@@ -6,8 +6,8 @@
public class AsUnitTestRunner extends TestRunner {
public function AsUnitTestRunner() {
-// start(AllTests, null, TestRunner.SHOW_TRACE);
- start(TestRunnerTest);
+ start(AllTests, null, TestRunner.SHOW_TRACE);
+// start(TestRunnerTest);
}
}
}
Modified: trunk/framework/as3/asunit/framework/Assert.as
===================================================================
--- trunk/framework/as3/asunit/framework/Assert.as 2006-09-19 21:40:51 UTC (rev 99)
+++ trunk/framework/as3/asunit/framework/Assert.as 2006-09-19 22:11:36 UTC (rev 100)
@@ -8,7 +8,7 @@
* A set of assert methods. Messages are only displayed when an assert fails.
*/
- public class Assert extends Proxy {
+ public class Assert {
/**
* Protect constructor since it is a static only class
*/
Modified: trunk/framework/as3/asunit/framework/AssertTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 21:40:51 UTC (rev 99)
+++ trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 22:11:36 UTC (rev 100)
@@ -51,7 +51,7 @@
public function testFail():void {
try {
- fail("this shouldn't be caught");
+ Assert.fail("this shouldn't be caught");
}
catch(e:Error) {
assertTrue("passed", true);
Modified: trunk/framework/as3/asunit/framework/TestCase.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 21:40:51 UTC (rev 99)
+++ trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 22:11:36 UTC (rev 100)
@@ -9,9 +9,7 @@
import asunit.util.ArrayIterator;
import flash.net.getClassByAlias;
import flash.utils.setTimeout;
- import flash.utils.flash_proxy;
- use namespace flash_proxy;
/**
* A test case defines the fixture to run multiple tests. To define a test case<br>
* 1) implement a subclass of TestCase<br>
@@ -76,7 +74,7 @@
* @see TestResult
* @see TestSuite
*/
- dynamic public class TestCase extends Assert implements Test {
+ public class TestCase extends Assert implements Test {
/**
* the name of the test case
*/
@@ -88,14 +86,12 @@
private var currentMethod:String;
private var runSingle:Boolean;
private var methodIterator:Iterator;
- private var asyncMethods:Object;
+ private var methodIsAsynchronous:Boolean;
-
/**
* Constructs a test case with the given name.
*/
public function TestCase(testMethod:String = null) {
- asyncMethods = new Object();
var description:XML = describeType(this);
var className:Object = description.@name;
var methods:XMLList = description..method.(@name.match("^test"));
@@ -119,27 +115,11 @@
protected function setTestMethods(methodNodes:XMLList):void {
testMethods = new Array();
var methodNames:Object = methodNodes.@name;
- var completeMethods:Array = new Array();
var name:String;
for each(var item:Object in methodNames) {
name = item.toString();
- if(name.match(/Complete$/)) {
- completeMethods.push(name);
- }
- else {
- testMethods.push(name);
- }
+ testMethods.push(name);
}
- for each(name in completeMethods) {
- var index:int = name.indexOf("Complete");
- var baseName:String = name.substr(0, index);
- if(testMethods.indexOf(baseName) == -1) {
- testMethods.push(name);
- }
- else {
- swapCompleteMethod(name);
- }
- }
}
/**
@@ -189,23 +169,22 @@
public function runBare():void {
var name:String;
var itr:Iterator = getMethodIterator();
- var isWaiting:Boolean = false;
try {
while(itr.hasNext()) {
name = String(itr.next());
trace("name: " + name);
if(!runMethod(name)) {
trace("BLOCKING EXECUTION ON : " + name);
- isWaiting = true;
break;
}
}
}
finally {
if(!runSingle) {
- cleanUp();
- if(!itr.hasNext() && !isWaiting) {
- trace("itr hasNext was false");
+ if(!itr.hasNext() && !methodIsAsynchronous) {
+ trace("--------------");
+ trace("INSIDE THE END");
+ cleanUp();
result.endTest(this);
isComplete = true;
}
@@ -225,39 +204,16 @@
// member cleanup after all test methods have run
protected function cleanUp():void {
}
-
- override flash_proxy function hasProperty(name:*):Boolean {
- return (this[name] != undefined);
- }
- override flash_proxy function getProperty(name:*):* {
- return asyncMethods[name];
- }
-
-// override flash_proxy function setProperty(name:*, value:*):void {
-// this[name] = value;
-// }
-
private function runMethod(methodName:String):Boolean {
try {
setUp();
currentMethod = methodName;
try {
- if((methodName + "Complete") in this) {
- trace("FOUND YOU! at: " + methodName);
- this[methodName]();
+ this[methodName]();
+ if(methodIsAsynchronous) {
return false;
}
-// var ns:Namespace = flash_proxy;
-// if(this.flash_proxy::hasProperty(methodName + "Complete")) {
-// trace("HAS PROP : " + methodName);
-// }
-// if(this[methodName + "Complete"] != null) {
-// if(this.hasOwnProperty(methodName + "Complete")) {
-// setTimeout(this[methodName], 1);
-// return false;
-// }
- this[methodName]();
}
finally {
if(!runSingle) {
@@ -274,18 +230,6 @@
return true;
}
- private function swapCompleteMethod(name:String):void {
- trace("swapping complete method with: " + name);
- asyncMethods["__" + name] = this[name];
- asyncMethods[name] = defaultCompleteMethod;
-// this[name] = this.defaultCompleteMethod;
- //var result:Boolean = delete this[name];
- //trace("RESULT: " + result);
- }
-
- public function defaultCompleteMethod():void {
- trace("asunit complete called");
- }
/**
* Sets up the fixture, for example, instantiate a mock object.
* This method is called before each test is executed.
@@ -330,6 +274,24 @@
return context;
}
+ protected function addAsync(handler:Function):Function {
+ methodIsAsynchronous = true;
+ var context:Object = this;
+ return function(args:*):* {
+ try {
+ handler.apply(context, arguments);
+ }
+ catch(e:AssertionFailedError) {
+ context.result.addFailure(context, e);
+ }
+ catch(ioe:IllegalOperationError) {
+ context.result.addError(context, ioe);
+ }
+ context.methodIsAsynchronous = false;
+ context.runBare();
+ }
+ }
+
protected function addChild(child:DisplayObject):DisplayObject {
return getContext().addChild(child);
}
@@ -338,8 +300,8 @@
return getContext().removeChild(child);
}
- public function fail(message:String):void {
- result.addFailure(this, new AssertionFailedError(message));
- }
+// public function fail(message:String):void {
+// result.addFailure(this, new AssertionFailedError(message));
+// }
}
}
\ No newline at end of file
Modified: trunk/framework/as3/asunit/textui/TestRunnerTest.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 21:40:51 UTC (rev 99)
+++ trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 22:11:36 UTC (rev 100)
@@ -1,6 +1,8 @@
package asunit.textui {
import asunit.framework.TestCase;
- import flash.utils.setTimeout;
+ import flash.utils.setTimeout;
+ import flash.events.Event;
+ import flash.errors.IllegalOperationError;
public class TestRunnerTest extends TestCase {
private var instance:TestRunner;
@@ -20,20 +22,26 @@
}
public function testInstantiated():void {
- assertTrue("TestRunner instantiated", instance is TestRunner);
+ assertTrue("TestRunner instantiated with: " + instance, instance is TestRunner);
}
public function testAsync():void {
- setTimeout(testAsyncComplete, 10);
+ var handler:Function = addAsync(asyncCompleteHandler);
+ setTimeout(handler, 1000, new Event(Event.ACTIVATE));
}
- public function testAsyncComplete():void {
- trace("user complete called");
+ public function asyncCompleteHandler(event:Event):void {
+// throw new IllegalOperationError("what the fuck?");
fail("test async complete failed");
- runBare();
}
public function testSomethingComplete():void {
}
+
+ public function testSomethingElse():void {
+ }
+
+ public function testAnotherThing():void {
+ }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 21:40:56
|
Revision: 99
http://svn.sourceforge.net/asunit/?rev=99&view=rev
Author: lukebayes
Date: 2006-09-19 14:40:51 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
got a basic async test method working, still not ideal though
Modified Paths:
--------------
trunk/framework/as3/AsUnitTestRunner.as
trunk/framework/as3/asunit/framework/TestCase.as
trunk/framework/as3/asunit/textui/TestRunnerTest.as
Modified: trunk/framework/as3/AsUnitTestRunner.as
===================================================================
--- trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 20:35:05 UTC (rev 98)
+++ trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 21:40:51 UTC (rev 99)
@@ -6,8 +6,8 @@
public class AsUnitTestRunner extends TestRunner {
public function AsUnitTestRunner() {
- start(AllTests, null, TestRunner.SHOW_TRACE);
-// start(TestRunnerTest);
+// start(AllTests, null, TestRunner.SHOW_TRACE);
+ start(TestRunnerTest);
}
}
}
Modified: trunk/framework/as3/asunit/framework/TestCase.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 20:35:05 UTC (rev 98)
+++ trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 21:40:51 UTC (rev 99)
@@ -76,7 +76,7 @@
* @see TestResult
* @see TestSuite
*/
- public class TestCase extends Assert implements Test {
+ dynamic public class TestCase extends Assert implements Test {
/**
* the name of the test case
*/
@@ -88,12 +88,14 @@
private var currentMethod:String;
private var runSingle:Boolean;
private var methodIterator:Iterator;
+ private var asyncMethods:Object;
/**
* Constructs a test case with the given name.
*/
public function TestCase(testMethod:String = null) {
+ asyncMethods = new Object();
var description:XML = describeType(this);
var className:Object = description.@name;
var methods:XMLList = description..method.(@name.match("^test"));
@@ -123,7 +125,6 @@
name = item.toString();
if(name.match(/Complete$/)) {
completeMethods.push(name);
- swapCompleteMethod(name);
}
else {
testMethods.push(name);
@@ -135,6 +136,9 @@
if(testMethods.indexOf(baseName) == -1) {
testMethods.push(name);
}
+ else {
+ swapCompleteMethod(name);
+ }
}
}
@@ -185,12 +189,14 @@
public function runBare():void {
var name:String;
var itr:Iterator = getMethodIterator();
+ var isWaiting:Boolean = false;
try {
while(itr.hasNext()) {
name = String(itr.next());
- trace("itrating with: " + getName() + "." + name);
+ trace("name: " + name);
if(!runMethod(name)) {
- trace("RETURNING ON : " + name);
+ trace("BLOCKING EXECUTION ON : " + name);
+ isWaiting = true;
break;
}
}
@@ -198,7 +204,8 @@
finally {
if(!runSingle) {
cleanUp();
- if(!itr.hasNext()) {
+ if(!itr.hasNext() && !isWaiting) {
+ trace("itr hasNext was false");
result.endTest(this);
isComplete = true;
}
@@ -219,12 +226,16 @@
protected function cleanUp():void {
}
-// override flash_proxy function hasProperty(name:*):Boolean {
-// return (this[name] != undefined);
-// }
+ override flash_proxy function hasProperty(name:*):Boolean {
+ return (this[name] != undefined);
+ }
-// override flash_proxy function getProperty(name:*):* {
-// return this[name];
+ override flash_proxy function getProperty(name:*):* {
+ return asyncMethods[name];
+ }
+
+// override flash_proxy function setProperty(name:*, value:*):void {
+// this[name] = value;
// }
private function runMethod(methodName:String):Boolean {
@@ -232,6 +243,11 @@
setUp();
currentMethod = methodName;
try {
+ if((methodName + "Complete") in this) {
+ trace("FOUND YOU! at: " + methodName);
+ this[methodName]();
+ return false;
+ }
// var ns:Namespace = flash_proxy;
// if(this.flash_proxy::hasProperty(methodName + "Complete")) {
// trace("HAS PROP : " + methodName);
@@ -260,15 +276,15 @@
private function swapCompleteMethod(name:String):void {
trace("swapping complete method with: " + name);
- var obj:Object = new Object();
- obj[name] = this[name];
-// this[name] = defaultCompleteMethod;
-// this.prototype["__" + name] = this.prototype[name];
-// this[name] = defaultCompleteMethod;
+ asyncMethods["__" + name] = this[name];
+ asyncMethods[name] = defaultCompleteMethod;
+// this[name] = this.defaultCompleteMethod;
+ //var result:Boolean = delete this[name];
+ //trace("RESULT: " + result);
}
- private function defaultCompleteMethod():void {
- trace("default complete method called");
+ public function defaultCompleteMethod():void {
+ trace("asunit complete called");
}
/**
* Sets up the fixture, for example, instantiate a mock object.
@@ -322,5 +338,8 @@
return getContext().removeChild(child);
}
+ public function fail(message:String):void {
+ result.addFailure(this, new AssertionFailedError(message));
+ }
}
}
\ No newline at end of file
Modified: trunk/framework/as3/asunit/textui/TestRunnerTest.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 20:35:05 UTC (rev 98)
+++ trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 21:40:51 UTC (rev 99)
@@ -23,17 +23,17 @@
assertTrue("TestRunner instantiated", instance is TestRunner);
}
-// public function testAsync():void {
-// setTimeout(testAsyncComplete, 10);
-// }
+ public function testAsync():void {
+ setTimeout(testAsyncComplete, 10);
+ }
-// public function testAsyncComplete():void {
-// fail("test async complete failed");
-// runBare();
-// }
+ public function testAsyncComplete():void {
+ trace("user complete called");
+ fail("test async complete failed");
+ runBare();
+ }
public function testSomethingComplete():void {
- trace("testSomethignCOmplete executed");
}
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 20:35:14
|
Revision: 98
http://svn.sourceforge.net/asunit/?rev=98&view=rev
Author: lukebayes
Date: 2006-09-19 13:35:05 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
Working on async test methods
Modified Paths:
--------------
trunk/framework/as3/AsUnitTestRunner.as
trunk/framework/as3/asunit/framework/Assert.as
trunk/framework/as3/asunit/framework/TestCase.as
trunk/framework/as3/asunit/framework/TestResult.as
trunk/framework/as3/asunit/textui/TestRunnerTest.as
trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as
Modified: trunk/framework/as3/AsUnitTestRunner.as
===================================================================
--- trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 16:57:15 UTC (rev 97)
+++ trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 20:35:05 UTC (rev 98)
@@ -1,12 +1,13 @@
package {
import asunit.textui.TestRunner;
import asunit.framework.TestCaseTest;
+ import asunit.textui.TestRunnerTest;
public class AsUnitTestRunner extends TestRunner {
public function AsUnitTestRunner() {
start(AllTests, null, TestRunner.SHOW_TRACE);
-// start(TestCaseTest, "testAsyncMethod");
+// start(TestRunnerTest);
}
}
}
Modified: trunk/framework/as3/asunit/framework/Assert.as
===================================================================
--- trunk/framework/as3/asunit/framework/Assert.as 2006-09-19 16:57:15 UTC (rev 97)
+++ trunk/framework/as3/asunit/framework/Assert.as 2006-09-19 20:35:05 UTC (rev 98)
@@ -2,12 +2,13 @@
import flash.errors.IllegalOperationError;
import asunit.errors.AssertionFailedError;
+ import flash.utils.Proxy;
/**
* A set of assert methods. Messages are only displayed when an assert fails.
*/
- public class Assert {
+ public class Assert extends Proxy {
/**
* Protect constructor since it is a static only class
*/
Modified: trunk/framework/as3/asunit/framework/TestCase.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 16:57:15 UTC (rev 97)
+++ trunk/framework/as3/asunit/framework/TestCase.as 2006-09-19 20:35:05 UTC (rev 98)
@@ -5,7 +5,13 @@
import flash.display.DisplayObjectContainer;
import flash.errors.IllegalOperationError;
import flash.utils.describeType;
+ import asunit.util.Iterator;
+ import asunit.util.ArrayIterator;
+ import flash.net.getClassByAlias;
+ import flash.utils.setTimeout;
+ import flash.utils.flash_proxy;
+ use namespace flash_proxy;
/**
* A test case defines the fixture to run multiple tests. To define a test case<br>
* 1) implement a subclass of TestCase<br>
@@ -70,7 +76,6 @@
* @see TestResult
* @see TestSuite
*/
-
public class TestCase extends Assert implements Test {
/**
* the name of the test case
@@ -82,6 +87,7 @@
protected var context:DisplayObjectContainer;
private var currentMethod:String;
private var runSingle:Boolean;
+ private var methodIterator:Iterator;
/**
@@ -111,9 +117,25 @@
protected function setTestMethods(methodNodes:XMLList):void {
testMethods = new Array();
var methodNames:Object = methodNodes.@name;
+ var completeMethods:Array = new Array();
+ var name:String;
for each(var item:Object in methodNames) {
- testMethods.push(item.toString());
+ name = item.toString();
+ if(name.match(/Complete$/)) {
+ completeMethods.push(name);
+ swapCompleteMethod(name);
+ }
+ else {
+ testMethods.push(name);
+ }
}
+ for each(name in completeMethods) {
+ var index:int = name.indexOf("Complete");
+ var baseName:String = name.substr(0, index);
+ if(testMethods.indexOf(baseName) == -1) {
+ testMethods.push(name);
+ }
+ }
}
/**
@@ -161,28 +183,35 @@
* throws Error
*/
public function runBare():void {
- var methods:Array = testMethods;
+ var name:String;
+ var itr:Iterator = getMethodIterator();
try {
- for each(var name:String in methods) {
- try {
- runMethod(name);
+ while(itr.hasNext()) {
+ name = String(itr.next());
+ trace("itrating with: " + getName() + "." + name);
+ if(!runMethod(name)) {
+ trace("RETURNING ON : " + name);
+ break;
}
- catch(e:AssertionFailedError) {
- result.addFailure(this, e);
- }
- catch(ioe:Error) {
- result.addError(this, ioe);
- }
}
}
finally {
if(!runSingle) {
cleanUp();
+ if(!itr.hasNext()) {
+ result.endTest(this);
+ isComplete = true;
+ }
}
}
-
- isComplete = true;
}
+
+ private function getMethodIterator():Iterator {
+ if(methodIterator == null) {
+ methodIterator = new ArrayIterator(testMethods);
+ }
+ return methodIterator;
+ }
// Override this method in Asynchronous test cases
// or any other time you want to perform additional
@@ -190,19 +219,57 @@
protected function cleanUp():void {
}
- private function runMethod(methodName:String):void {
- setUp();
- currentMethod = methodName;
+// override flash_proxy function hasProperty(name:*):Boolean {
+// return (this[name] != undefined);
+// }
+
+// override flash_proxy function getProperty(name:*):* {
+// return this[name];
+// }
+
+ private function runMethod(methodName:String):Boolean {
try {
- this[methodName]();
- }
- finally {
- if(!runSingle) {
- tearDown();
+ setUp();
+ currentMethod = methodName;
+ try {
+// var ns:Namespace = flash_proxy;
+// if(this.flash_proxy::hasProperty(methodName + "Complete")) {
+// trace("HAS PROP : " + methodName);
+// }
+// if(this[methodName + "Complete"] != null) {
+// if(this.hasOwnProperty(methodName + "Complete")) {
+// setTimeout(this[methodName], 1);
+// return false;
+// }
+ this[methodName]();
}
+ finally {
+ if(!runSingle) {
+ tearDown();
+ }
+ }
}
+ catch(e:AssertionFailedError) {
+ result.addFailure(this, e);
+ }
+ catch(ioe:Error) {
+ result.addError(this, ioe);
+ }
+ return true;
}
+ private function swapCompleteMethod(name:String):void {
+ trace("swapping complete method with: " + name);
+ var obj:Object = new Object();
+ obj[name] = this[name];
+// this[name] = defaultCompleteMethod;
+// this.prototype["__" + name] = this.prototype[name];
+// this[name] = defaultCompleteMethod;
+ }
+
+ private function defaultCompleteMethod():void {
+ trace("default complete method called");
+ }
/**
* Sets up the fixture, for example, instantiate a mock object.
* This method is called before each test is executed.
Modified: trunk/framework/as3/asunit/framework/TestResult.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestResult.as 2006-09-19 16:57:15 UTC (rev 97)
+++ trunk/framework/as3/asunit/framework/TestResult.as 2006-09-19 20:35:05 UTC (rev 98)
@@ -103,18 +103,7 @@
*/
public function run(test:TestCase):void {
startTest(test);
- try {
- test.runBare();
- }
- catch(e:AssertionFailedError) {
- addFailure(test, e);
- }
- catch(ioe:IllegalOperationError) {
- addError(test, ioe);
- }
- finally {
- endTest(test);
- }
+ test.runBare();
}
/**
* Gets the number of run tests.
Modified: trunk/framework/as3/asunit/textui/TestRunnerTest.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 16:57:15 UTC (rev 97)
+++ trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 20:35:05 UTC (rev 98)
@@ -1,5 +1,6 @@
package asunit.textui {
- import asunit.framework.TestCase;
+ import asunit.framework.TestCase;
+ import flash.utils.setTimeout;
public class TestRunnerTest extends TestCase {
private var instance:TestRunner;
@@ -21,9 +22,18 @@
public function testInstantiated():void {
assertTrue("TestRunner instantiated", instance is TestRunner);
}
+
+// public function testAsync():void {
+// setTimeout(testAsyncComplete, 10);
+// }
- public function testStart():void {
- instance.start(TestRunnerTestCaseMock);
+// public function testAsyncComplete():void {
+// fail("test async complete failed");
+// runBare();
+// }
+
+ public function testSomethingComplete():void {
+ trace("testSomethignCOmplete executed");
}
}
}
Modified: trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as 2006-09-19 16:57:15 UTC (rev 97)
+++ trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as 2006-09-19 20:35:05 UTC (rev 98)
@@ -15,6 +15,10 @@
testMethod1Run = true;
}
+ public function testMethod1Completed():void {
+ trace("testMethod1Handler called");
+ }
+
public function testMethod2():void {
testMethod2Run = true;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 16:57:23
|
Revision: 97
http://svn.sourceforge.net/asunit/?rev=97&view=rev
Author: lukebayes
Date: 2006-09-19 09:57:15 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
added TestRunner test and mock
Added Paths:
-----------
trunk/framework/as3/asunit/textui/TestRunnerTest.as
trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as
Added: trunk/framework/as3/asunit/textui/TestRunnerTest.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTest.as (rev 0)
+++ trunk/framework/as3/asunit/textui/TestRunnerTest.as 2006-09-19 16:57:15 UTC (rev 97)
@@ -0,0 +1,29 @@
+package asunit.textui {
+ import asunit.framework.TestCase;
+
+ public class TestRunnerTest extends TestCase {
+ private var instance:TestRunner;
+
+ public function TestRunnerTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ protected override function setUp():void {
+ instance = new TestRunner();
+ addChild(instance);
+ }
+
+ protected override function tearDown():void {
+ removeChild(instance);
+ instance = null;
+ }
+
+ public function testInstantiated():void {
+ assertTrue("TestRunner instantiated", instance is TestRunner);
+ }
+
+ public function testStart():void {
+ instance.start(TestRunnerTestCaseMock);
+ }
+ }
+}
Added: trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as (rev 0)
+++ trunk/framework/as3/asunit/textui/TestRunnerTestCaseMock.as 2006-09-19 16:57:15 UTC (rev 97)
@@ -0,0 +1,26 @@
+package asunit.textui {
+
+ import asunit.framework.TestCase;
+
+ public class TestRunnerTestCaseMock extends TestCase {
+ public var testMethod1Run:Boolean;
+ public var testMethod2Run:Boolean;
+ public var testMethod3Run:Boolean;
+
+ public function TestRunnerTestCaseMock(methodName:String = null) {
+ super(methodName);
+ }
+
+ public function testMethod1():void {
+ testMethod1Run = true;
+ }
+
+ public function testMethod2():void {
+ testMethod2Run = true;
+ }
+
+ public function testMethod3():void {
+ testMethod3Run = true;
+ }
+ }
+}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 16:56:33
|
Revision: 96
http://svn.sourceforge.net/asunit/?rev=96&view=rev
Author: lukebayes
Date: 2006-09-19 09:56:18 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
added ArrayIterator to framework
Modified Paths:
--------------
trunk/framework/as3/AsUnitTestRunner.as
trunk/framework/as3/asunit/AllTests.as
trunk/framework/as3/asunit/framework/AssertTest.as
trunk/framework/as3/asunit/framework/TestCaseMock.as
trunk/framework/as3/asunit/framework/TestCaseTest.as
trunk/framework/as3/asunit/framework/TestFailureTest.as
trunk/framework/as3/asunit/framework/VisualTestCaseTest.as
Added Paths:
-----------
trunk/framework/as3/asunit/util/AllTests.as
trunk/framework/as3/asunit/util/ArrayIterator.as
trunk/framework/as3/asunit/util/ArrayIteratorTest.as
trunk/framework/as3/asunit/util/Iterator.as
Modified: trunk/framework/as3/AsUnitTestRunner.as
===================================================================
--- trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 16:41:23 UTC (rev 95)
+++ trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -1,17 +1,12 @@
package {
import asunit.textui.TestRunner;
- import flash.display.Stage;
- import flash.display.StageAlign;
- import flash.display.StageScaleMode;
- import flash.system.fscommand;
import asunit.framework.TestCaseTest;
public class AsUnitTestRunner extends TestRunner {
public function AsUnitTestRunner() {
- stage.align = StageAlign.TOP_LEFT;
- stage.scaleMode = StageScaleMode.NO_SCALE;
- start(TestCaseTest, "testAsyncMethod");
+ start(AllTests, null, TestRunner.SHOW_TRACE);
+// start(TestCaseTest, "testAsyncMethod");
}
}
}
Modified: trunk/framework/as3/asunit/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/AllTests.as 2006-09-19 16:41:23 UTC (rev 95)
+++ trunk/framework/as3/asunit/AllTests.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -1,11 +1,15 @@
package asunit {
import asunit.framework.TestSuite;
import asunit.framework.AllTests;
+ import asunit.textui.AllTests;
+ import asunit.util.AllTests;
public class AllTests extends TestSuite {
public function AllTests() {
addTest(new asunit.framework.AllTests());
+ addTest(new asunit.textui.AllTests());
+ addTest(new asunit.util.AllTests());
}
}
}
Modified: trunk/framework/as3/asunit/framework/AssertTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 16:41:23 UTC (rev 95)
+++ trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -5,7 +5,7 @@
public class AssertTest extends TestCase {
- public function AssertTest(testMethod:String) {
+ public function AssertTest(testMethod:String = null) {
super(testMethod);
}
Modified: trunk/framework/as3/asunit/framework/TestCaseMock.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCaseMock.as 2006-09-19 16:41:23 UTC (rev 95)
+++ trunk/framework/as3/asunit/framework/TestCaseMock.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -5,7 +5,7 @@
public var testMethod2Run:Boolean;
public var testMethod3Run:Boolean;
- public function TestCaseMock(methodName:String) {
+ public function TestCaseMock(methodName:String = null) {
super(methodName);
}
Modified: trunk/framework/as3/asunit/framework/TestCaseTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-19 16:41:23 UTC (rev 95)
+++ trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -2,7 +2,7 @@
public class TestCaseTest extends TestCase {
- public function TestCaseTest(testMethod:String) {
+ public function TestCaseTest(testMethod:String = null) {
super(testMethod);
}
@@ -41,9 +41,5 @@
assertTrue("testMethod2Run", mock.testMethod2Run);
assertTrue("testMethod3Run", mock.testMethod3Run);
}
-
- public function testAsyncMethod():void {
- assertTrue(false);
- }
}
}
\ No newline at end of file
Modified: trunk/framework/as3/asunit/framework/TestFailureTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestFailureTest.as 2006-09-19 16:41:23 UTC (rev 95)
+++ trunk/framework/as3/asunit/framework/TestFailureTest.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -2,7 +2,7 @@
public class TestFailureTest extends TestCase {
- public function TestFailureTest(testMethod:String) {
+ public function TestFailureTest(testMethod:String = null) {
super(testMethod);
}
Modified: trunk/framework/as3/asunit/framework/VisualTestCaseTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/VisualTestCaseTest.as 2006-09-19 16:41:23 UTC (rev 95)
+++ trunk/framework/as3/asunit/framework/VisualTestCaseTest.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -4,6 +4,10 @@
public class VisualTestCaseTest extends TestCase {
private var instance:Sprite;
+ public function VisualTestCaseTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
protected override function setUp():void {
instance = new Sprite();
addChild(instance);
Added: trunk/framework/as3/asunit/util/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/util/AllTests.as (rev 0)
+++ trunk/framework/as3/asunit/util/AllTests.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -0,0 +1,11 @@
+package asunit.util {
+ import asunit.framework.TestSuite;
+ import asunit.util.ArrayIteratorTest;
+
+ public class AllTests extends TestSuite {
+
+ public function AllTests() {
+ addTest(new asunit.util.ArrayIteratorTest());
+ }
+ }
+}
Added: trunk/framework/as3/asunit/util/ArrayIterator.as
===================================================================
--- trunk/framework/as3/asunit/util/ArrayIterator.as (rev 0)
+++ trunk/framework/as3/asunit/util/ArrayIterator.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -0,0 +1,24 @@
+package asunit.util {
+ import asunit.util.Iterator;
+
+ public class ArrayIterator implements Iterator {
+ private var list:Array;
+ private var index:Number = 0;
+
+ public function ArrayIterator(list:Array) {
+ this.list = list;
+ }
+
+ public function hasNext():Boolean {
+ return list[index] != null;
+ }
+
+ public function next():Object {
+ return list[index++];
+ }
+
+ public function reset():void {
+ index = 0;
+ }
+ }
+}
Added: trunk/framework/as3/asunit/util/ArrayIteratorTest.as
===================================================================
--- trunk/framework/as3/asunit/util/ArrayIteratorTest.as (rev 0)
+++ trunk/framework/as3/asunit/util/ArrayIteratorTest.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -0,0 +1,65 @@
+package asunit.util {
+ import asunit.framework.TestCase;
+
+ public class ArrayIteratorTest extends TestCase {
+ private var itr:ArrayIterator;
+
+ public function ArrayIteratorTest(testMethod:String = null) {
+ super(testMethod);
+ }
+
+ protected override function setUp():void {
+ itr = new ArrayIterator(getSimpleArray(5));
+ }
+
+ private function getSimpleArray(count:Number):Array {
+ var arr:Array = new Array();
+ for(var i:Number = 0; i < count; i++) {
+ arr.push("item-" + i);
+ }
+ return arr;
+ }
+
+ protected override function tearDown():void {
+ itr = null;
+ }
+
+ public function testInstantiated():void {
+ assertTrue("ArrayIterator instantiated", itr is ArrayIterator);
+ }
+
+ public function testHasNext():void {
+ assertTrue(itr.hasNext());
+ }
+
+ public function testNext():void {
+ assertEquals("item-0", itr.next());
+ }
+
+ public function testNextTwice():void {
+ assertEquals("item-0", itr.next());
+ assertEquals("item-1", itr.next());
+ }
+
+ public function testLast():void {
+ assertTrue(itr.hasNext());
+ assertEquals("item-0", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-1", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-2", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-3", itr.next());
+ assertTrue(itr.hasNext());
+ assertEquals("item-4", itr.next());
+ assertFalse(itr.hasNext());
+ }
+
+ public function testReset():void {
+ testLast();
+ itr.reset();
+ assertTrue(itr.hasNext());
+ assertEquals("item-0", itr.next());
+ }
+ }
+}
Added: trunk/framework/as3/asunit/util/Iterator.as
===================================================================
--- trunk/framework/as3/asunit/util/Iterator.as (rev 0)
+++ trunk/framework/as3/asunit/util/Iterator.as 2006-09-19 16:56:18 UTC (rev 96)
@@ -0,0 +1,8 @@
+package asunit.util {
+
+ public interface Iterator {
+ function next():Object;
+ function hasNext():Boolean;
+ function reset():void;
+ }
+}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 16:41:28
|
Revision: 95
http://svn.sourceforge.net/asunit/?rev=95&view=rev
Author: lukebayes
Date: 2006-09-19 09:41:23 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
saved tagline.png source file
Modified Paths:
--------------
trunk/comm/www/art/TagLine.png
Modified: trunk/comm/www/art/TagLine.png
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 16:36:31
|
Revision: 94
http://svn.sourceforge.net/asunit/?rev=94&view=rev
Author: lukebayes
Date: 2006-09-19 09:36:18 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
updated tagline to mention player 9 instead of 8.5
Modified Paths:
--------------
trunk/comm/www/art/TagLine.png
trunk/comm/www/html/img/TagLine.gif
Added Paths:
-----------
trunk/comm/www/html/AsUnitUi-2.8.swf
Modified: trunk/comm/www/art/TagLine.png
===================================================================
(Binary files differ)
Added: trunk/comm/www/html/AsUnitUi-2.8.swf
===================================================================
(Binary files differ)
Property changes on: trunk/comm/www/html/AsUnitUi-2.8.swf
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/comm/www/html/img/TagLine.gif
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 16:24:14
|
Revision: 93
http://svn.sourceforge.net/asunit/?rev=93&view=rev
Author: lukebayes
Date: 2006-09-19 09:24:06 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
fixing test case constructors
Modified Paths:
--------------
trunk/framework/as3/AsUnitTestRunner.as
trunk/framework/as3/asunit/framework/AllTests.as
trunk/framework/as3/asunit/framework/AssertTest.as
trunk/framework/as3/asunit/framework/TestCaseTest.as
trunk/framework/as3/asunit/framework/TestFailureTest.as
Removed Paths:
-------------
trunk/framework/as3/asunit/framework/TestSuiteTest.as
Modified: trunk/framework/as3/AsUnitTestRunner.as
===================================================================
--- trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 16:19:15 UTC (rev 92)
+++ trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 16:24:06 UTC (rev 93)
@@ -4,13 +4,14 @@
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.system.fscommand;
+ import asunit.framework.TestCaseTest;
public class AsUnitTestRunner extends TestRunner {
public function AsUnitTestRunner() {
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
- start(AllTests);
+ start(TestCaseTest, "testAsyncMethod");
}
}
}
Modified: trunk/framework/as3/asunit/framework/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/framework/AllTests.as 2006-09-19 16:19:15 UTC (rev 92)
+++ trunk/framework/as3/asunit/framework/AllTests.as 2006-09-19 16:24:06 UTC (rev 93)
@@ -3,7 +3,6 @@
import asunit.framework.AssertTest;
import asunit.framework.TestCaseTest;
import asunit.framework.TestFailureTest;
- import asunit.framework.TestSuiteTest;
import asunit.framework.VisualTestCaseTest;
public class AllTests extends TestSuite {
@@ -12,7 +11,6 @@
addTest(new asunit.framework.AssertTest());
addTest(new asunit.framework.TestCaseTest());
addTest(new asunit.framework.TestFailureTest());
- addTest(new asunit.framework.TestSuiteTest());
addTest(new asunit.framework.VisualTestCaseTest());
}
}
Modified: trunk/framework/as3/asunit/framework/AssertTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 16:19:15 UTC (rev 92)
+++ trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 16:24:06 UTC (rev 93)
@@ -5,7 +5,7 @@
public class AssertTest extends TestCase {
- public function AssertTest(testMethod:String = null) {
+ public function AssertTest(testMethod:String) {
super(testMethod);
}
Modified: trunk/framework/as3/asunit/framework/TestCaseTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-19 16:19:15 UTC (rev 92)
+++ trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-19 16:24:06 UTC (rev 93)
@@ -2,6 +2,10 @@
public class TestCaseTest extends TestCase {
+ public function TestCaseTest(testMethod:String) {
+ super(testMethod);
+ }
+
public function testInstantiated():void {
assertTrue(this is TestCase);
}
@@ -37,5 +41,9 @@
assertTrue("testMethod2Run", mock.testMethod2Run);
assertTrue("testMethod3Run", mock.testMethod3Run);
}
+
+ public function testAsyncMethod():void {
+ assertTrue(false);
+ }
}
}
\ No newline at end of file
Modified: trunk/framework/as3/asunit/framework/TestFailureTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestFailureTest.as 2006-09-19 16:19:15 UTC (rev 92)
+++ trunk/framework/as3/asunit/framework/TestFailureTest.as 2006-09-19 16:24:06 UTC (rev 93)
@@ -2,6 +2,10 @@
public class TestFailureTest extends TestCase {
+ public function TestFailureTest(testMethod:String) {
+ super(testMethod);
+ }
+
public function testInstantiated():void {
var failure:TestFailure = new TestFailure(this, new Error());
assertTrue(failure is TestFailure);
Deleted: trunk/framework/as3/asunit/framework/TestSuiteTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestSuiteTest.as 2006-09-19 16:19:15 UTC (rev 92)
+++ trunk/framework/as3/asunit/framework/TestSuiteTest.as 2006-09-19 16:24:06 UTC (rev 93)
@@ -1,11 +0,0 @@
-package asunit.framework {
-
- public class TestSuiteTest extends TestSuite {
-
- public function TestSuiteTest() {
-// addTest(new AssertTest());
-// addTest(new AssertTest());
-// addTest(new AssertTest());
- }
- }
-}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 16:19:22
|
Revision: 92
http://svn.sourceforge.net/asunit/?rev=92&view=rev
Author: lukebayes
Date: 2006-09-19 09:19:15 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
added test suites to repository
Added Paths:
-----------
trunk/framework/as3/AllTests.as
trunk/framework/as3/asunit/AllTests.as
trunk/framework/as3/asunit/framework/AllTests.as
Added: trunk/framework/as3/AllTests.as
===================================================================
--- trunk/framework/as3/AllTests.as (rev 0)
+++ trunk/framework/as3/AllTests.as 2006-09-19 16:19:15 UTC (rev 92)
@@ -0,0 +1,11 @@
+package {
+ import asunit.framework.TestSuite;
+ import asunit.AllTests;
+
+ public class AllTests extends TestSuite {
+
+ public function AllTests() {
+ addTest(new asunit.AllTests());
+ }
+ }
+}
Added: trunk/framework/as3/asunit/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/AllTests.as (rev 0)
+++ trunk/framework/as3/asunit/AllTests.as 2006-09-19 16:19:15 UTC (rev 92)
@@ -0,0 +1,11 @@
+package asunit {
+ import asunit.framework.TestSuite;
+ import asunit.framework.AllTests;
+
+ public class AllTests extends TestSuite {
+
+ public function AllTests() {
+ addTest(new asunit.framework.AllTests());
+ }
+ }
+}
Added: trunk/framework/as3/asunit/framework/AllTests.as
===================================================================
--- trunk/framework/as3/asunit/framework/AllTests.as (rev 0)
+++ trunk/framework/as3/asunit/framework/AllTests.as 2006-09-19 16:19:15 UTC (rev 92)
@@ -0,0 +1,19 @@
+package asunit.framework {
+ import asunit.framework.TestSuite;
+ import asunit.framework.AssertTest;
+ import asunit.framework.TestCaseTest;
+ import asunit.framework.TestFailureTest;
+ import asunit.framework.TestSuiteTest;
+ import asunit.framework.VisualTestCaseTest;
+
+ public class AllTests extends TestSuite {
+
+ public function AllTests() {
+ addTest(new asunit.framework.AssertTest());
+ addTest(new asunit.framework.TestCaseTest());
+ addTest(new asunit.framework.TestFailureTest());
+ addTest(new asunit.framework.TestSuiteTest());
+ addTest(new asunit.framework.VisualTestCaseTest());
+ }
+ }
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-19 16:13:26
|
Revision: 91
http://svn.sourceforge.net/asunit/?rev=91&view=rev
Author: lukebayes
Date: 2006-09-19 09:13:14 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
got test fixtures up to date
Modified Paths:
--------------
trunk/framework/as3/AsUnitTestRunner.as
trunk/framework/as3/asunit/framework/AssertTest.as
trunk/framework/as3/asunit/framework/TestCaseTest.as
Modified: trunk/framework/as3/AsUnitTestRunner.as
===================================================================
--- trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 16:11:28 UTC (rev 90)
+++ trunk/framework/as3/AsUnitTestRunner.as 2006-09-19 16:13:14 UTC (rev 91)
@@ -7,8 +7,7 @@
public class AsUnitTestRunner extends TestRunner {
- public function AsUnit() {
- fscommand("fullscreen", "true");
+ public function AsUnitTestRunner() {
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
start(AllTests);
Modified: trunk/framework/as3/asunit/framework/AssertTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 16:11:28 UTC (rev 90)
+++ trunk/framework/as3/asunit/framework/AssertTest.as 2006-09-19 16:13:14 UTC (rev 91)
@@ -1,6 +1,5 @@
package asunit.framework {
- import flash.util.trace;
import flash.errors.IllegalOperationError;
import flash.display.Sprite;
Modified: trunk/framework/as3/asunit/framework/TestCaseTest.as
===================================================================
--- trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-19 16:11:28 UTC (rev 90)
+++ trunk/framework/as3/asunit/framework/TestCaseTest.as 2006-09-19 16:13:14 UTC (rev 91)
@@ -1,5 +1,4 @@
package asunit.framework {
- import flash.util.trace;
public class TestCaseTest extends TestCase {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ali...@us...> - 2006-09-19 16:11:34
|
Revision: 90
http://svn.sourceforge.net/asunit/?rev=90&view=rev
Author: alimills
Date: 2006-09-19 09:11:28 -0700 (Tue, 19 Sep 2006)
Log Message:
-----------
fixing bug that broke AsUnit in ActionScript projects
Modified Paths:
--------------
trunk/framework/as3/asunit/textui/TestRunner.as
Modified: trunk/framework/as3/asunit/textui/TestRunner.as
===================================================================
--- trunk/framework/as3/asunit/textui/TestRunner.as 2006-09-06 15:30:26 UTC (rev 89)
+++ trunk/framework/as3/asunit/textui/TestRunner.as 2006-09-19 16:11:28 UTC (rev 90)
@@ -43,7 +43,7 @@
}
protected function addedHandler(event:Event):void {
- if(event.target === this) {
+ if(event.target === fPrinter) {
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, resizeHandler);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 15:30:31
|
Revision: 89
http://svn.sourceforge.net/asunit/?rev=89&view=rev
Author: lukebayes
Date: 2006-09-06 08:30:26 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
extracted application feattures to asunit file
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
Added Paths:
-----------
trunk/ruby/src/asunit
Added: trunk/ruby/src/asunit
===================================================================
--- trunk/ruby/src/asunit (rev 0)
+++ trunk/ruby/src/asunit 2006-09-06 15:30:26 UTC (rev 89)
@@ -0,0 +1,53 @@
+#!/bin/ruby
+
+module AsUnit
+ # ------------------------------------------------------------------
+ # COPIED FROM RAKE! Rake module singleton methods.
+ #
+ class << self
+ # Current Rake Application
+ def application
+ @application ||= AsUnit::Application.new
+ end
+
+ # Set the current Rake application object.
+ def application=(app)
+ @application = app
+ end
+
+ # Return the original directory where the Rake application was
+ # started.
+ def original_dir
+ application.original_dir
+ end
+
+ ####################################################################
+ # Mixin for creating easily cloned objects.
+ #
+ module Cloneable
+ # Clone an object by making a new object and setting all the
+ # instance variables to the same values.
+ def clone
+ sibling = self.class.new
+ instance_variables.each do |ivar|
+ value = self.instance_variable_get(ivar)
+ sibling.instance_variable_set(ivar, value.rake_dup)
+ end
+ sibling
+ end
+ alias dup clone
+ end
+ end
+end
+
+class String
+ def ends_with? str
+ return false
+ end
+end
+
+require 'asunit.rb'
+
+if __FILE__ == $0 then
+ AsUnit::Application.new
+end
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 15:23:22 UTC (rev 88)
+++ trunk/ruby/src/asunit.rb 2006-09-06 15:30:26 UTC (rev 89)
@@ -5,44 +5,6 @@
TEST_TEMPLATE = 'TestCase.erb'
PROJECT_FILE_NAME = '.asunit'
- # ------------------------------------------------------------------
- # COPIED FROM RAKE! Rake module singleton methods.
- #
- class << self
- # Current Rake Application
- def application
- @application ||= AsUnit::Application.new
- end
-
- # Set the current Rake application object.
- def application=(app)
- @application = app
- end
-
- # Return the original directory where the Rake application was
- # started.
- def original_dir
- application.original_dir
- end
-
- ####################################################################
- # Mixin for creating easily cloned objects.
- #
- module Cloneable
- # Clone an object by making a new object and setting all the
- # instance variables to the same values.
- def clone
- sibling = self.class.new
- instance_variables.each do |ivar|
- value = self.instance_variable_get(ivar)
- sibling.instance_variable_set(ivar, value.rake_dup)
- end
- sibling
- end
- alias dup clone
- end
- end
-
require 'yaml'
require 'optparse'
require 'settings'
@@ -105,16 +67,5 @@
end
get_project_file(File.dirname(dir))
end
- end
-
+ end
end
-
-class String
- def ends_with? str
- return false
- end
-end
-
-if __FILE__ == $0 then
- AsUnit::Application.new
-end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 15:23:28
|
Revision: 88
http://svn.sourceforge.net/asunit/?rev=88&view=rev
Author: lukebayes
Date: 2006-09-06 08:23:22 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
worked visual entities in the test case
Modified Paths:
--------------
trunk/ruby/src/create_class.rb
trunk/ruby/src/template_resolver.rb
trunk/ruby/src/templates/Class.erb
trunk/ruby/src/templates/TestCase.erb
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/create_class.rb 2006-09-06 15:23:22 UTC (rev 88)
@@ -15,7 +15,7 @@
def run(args)
@resolver.superclass = args.superclass
- @resolver.visual = args.display_object?
+ @resolver.display_object = args.display_object?
args.interfaces.each {|inf|
@resolver.add_interface(inf)
}
Modified: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/template_resolver.rb 2006-09-06 15:23:22 UTC (rev 88)
@@ -5,7 +5,7 @@
module AsUnit
class TemplateResolver
attr_reader :template, :fullclass, :interfaces, :test_cases
- attr_accessor :superclass, :visual
+ attr_accessor :superclass, :display_object
def initialize(fullclass)
@fullclass = fullclass;
@@ -14,7 +14,7 @@
@package = nil
@parsed = nil
@superclass = nil
- @visual = nil
+ @display_object = false
@interfaces = Array.new
@test_cases = Array.new
end
@@ -52,6 +52,10 @@
@test_cases.push(test_case)
@test_cases.sort!
end
+
+ def display_object?
+ return @display_object
+ end
def superclass?
return !@superclass.nil?
@@ -66,10 +70,6 @@
@interfaces.sort!
end
- def visual?
- return @visual.nil?
- end
-
def superclass_decl
if(superclass?)
return ' extends ' + superclass.split('.').pop
@@ -78,7 +78,7 @@
end
end
- def import_statements
+ def import_statements
imports = Array.new
if(superclass?)
imports.push(import_statement(superclass))
@@ -88,8 +88,11 @@
imports.push(import_statement(inf))
}
end
+ if(imports.length == 0)
+ return ''
+ end
imports.sort!
- return imports.join("\n")
+ return "\n" + imports.join("\n") + "\n"
end
def import_statement(target)
Modified: trunk/ruby/src/templates/Class.erb
===================================================================
--- trunk/ruby/src/templates/Class.erb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/templates/Class.erb 2006-09-06 15:23:22 UTC (rev 88)
@@ -1,8 +1,6 @@
package <%= package %>{
-
<%= import_statements %>
-
public class <%= classname %><%= superclass_decl %><%= interfaces_decl %> {
public function <%= classname %>() {
Modified: trunk/ruby/src/templates/TestCase.erb
===================================================================
--- trunk/ruby/src/templates/TestCase.erb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/templates/TestCase.erb 2006-09-06 15:23:22 UTC (rev 88)
@@ -10,17 +10,15 @@
protected override function setUp():void {
super.setUp();
- instance = new <%= classname %>();
- <% if visual? %>
- addChild(instance);
- <% end %>
+ instance = new <%= classname %>();<%
+ if display_object? %>
+ addChild(instance);<% end %>
}
protected override function tearDown():void {
- super.tearDown();
- <% if visual? %>
- removeChild(instance);
- <% end %>
+ super.tearDown();<%
+ if display_object? %>
+ removeChild(instance);<% end %>
instance = null;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 08:11:15
|
Revision: 87
http://svn.sourceforge.net/asunit/?rev=87&view=rev
Author: lukebayes
Date: 2006-09-06 01:11:07 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
got robust template support
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
trunk/ruby/src/asunit_arguments.rb
trunk/ruby/src/create_class.rb
trunk/ruby/src/template_resolver.rb
trunk/ruby/src/templates/Class.erb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/asunit.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -62,18 +62,18 @@
arguments.classnames.each { |name|
if(name.ends_with? "Test")
begin
- create_class(name, settings, TEST_TEMPLATE, arguments.force?)
+ create_class(name, settings, TEST_TEMPLATE, arguments)
rescue Exception => e
results.push(e)
end
else
begin
- create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments.force?)
+ create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments)
rescue Exception => e
results.push(e)
end
begin
- create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments.force?)
+ create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments)
rescue Exception => e
results.push(e)
end
@@ -84,10 +84,10 @@
end
end
- def create_class(name, settings, template, force)
+ def create_class(name, settings, template, arguments)
begin
class_creator = AsUnit::CreateClass.new(name, settings, template)
- class_creator.run(force)
+ class_creator.run(arguments)
puts 'File Created at: ' + class_creator.final_path
return nil
rescue Exception => e
Modified: trunk/ruby/src/asunit_arguments.rb
===================================================================
--- trunk/ruby/src/asunit_arguments.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/asunit_arguments.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -16,7 +16,7 @@
opts = OptionParser.new do |opts|
opts.banner = "Usage: #$0 [options] CLASSNAME(s)"
- opts.on('-d', '--display-object', 'class created is a subclass of flash.display.DisplayObject') do
+ opts.on('-d', '--display-object', 'class is a visual entity') do
self[:display_object] = true
end
@@ -24,13 +24,6 @@
self[:force] = true
end
- opts.on('-p', '--project-file [FILE]', 'use this project file instead of looking for the nearest one [FILE]') do |file|
- if(file.nil?)
- raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
- end
- self[:project_file] = (file || '$')
- end
-
opts.on('-i', '--add-interface [STRING]', 'add an interface to this class [STRING]') do |inf|
if(inf.nil?)
raise '-i [--add-interface] argument must be followed by a fully-qualified interface name eg: "flash.events.IEventDispatcher"'
@@ -38,6 +31,13 @@
self[:interfaces].push(inf || '$')
end
+ opts.on('-p', '--project-file [FILE]', 'use provided project file [FILE]') do |file|
+ if(file.nil?)
+ raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
+ end
+ self[:project_file] = (file || '$')
+ end
+
opts.on('-s', '--superclass [STRING]', 'superclass of class being created [STRING]') do |superclass|
if(superclass.nil?)
raise '-s [--superclass] argument must be followed by a fully-qualified class name eg: "flash.display.DisplayObject"'
@@ -77,6 +77,10 @@
return self[:classnames]
end
+ def display_object?
+ return self[:display_object]
+ end
+
def force?
return self[:force]
end
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/create_class.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -4,7 +4,7 @@
module AsUnit
class CreateClass
attr_accessor :settings, :template_name
- attr_reader :final_path
+ attr_reader :final_path, :resolver
def initialize(name, settings, template)
@settings = settings
@@ -13,12 +13,17 @@
@final_path = ''
end
- def run(force=false)
+ def run(args)
+ @resolver.superclass = args.superclass
+ @resolver.visual = args.display_object?
+ args.interfaces.each {|inf|
+ @resolver.add_interface(inf)
+ }
src = Dir.pwd + File::SEPARATOR + settings.templates + File::SEPARATOR + template_name
template = IO.read(src)
@resolver.template = template
parsed = @resolver.parse
- file = create_file(target_file(settings.src), force)
+ file = create_file(target_file(settings.src), args.force?)
file.write(parsed)
end
Modified: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/template_resolver.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -4,7 +4,7 @@
module AsUnit
class TemplateResolver
- attr_reader :template, :fullclass, :classname, :interfaces, :test_cases
+ attr_reader :template, :fullclass, :interfaces, :test_cases
attr_accessor :superclass, :visual
def initialize(fullclass)
@@ -28,16 +28,20 @@
return ERB.new(@template).result(binding)
end
- def package
- if(@package.nil?)
+ def classname(fullname=@classname)
+ return fullname.split('.').pop
+ end
+
+ def package(pkg=@package)
+ if(pkg.nil?)
segments = fullclass.split('.')
segments.pop
- @package = segments.join('.')
+ pkg = segments.join('.')
if(segments.length > 0)
- @package += ' '
+ pkg += ' '
end
end
- return @package
+ return pkg
end
def path
@@ -65,5 +69,42 @@
def visual?
return @visual.nil?
end
+
+ def superclass_decl
+ if(superclass?)
+ return ' extends ' + superclass.split('.').pop
+ else
+ return ''
+ end
+ end
+
+ def import_statements
+ imports = Array.new
+ if(superclass?)
+ imports.push(import_statement(superclass))
+ end
+ if(interfaces?)
+ interfaces.each {|inf|
+ imports.push(import_statement(inf))
+ }
+ end
+ imports.sort!
+ return imports.join("\n")
+ end
+
+ def import_statement(target)
+ return "\timport " + target + ";"
+ end
+
+ def interfaces_decl
+ if(!interfaces?)
+ return ''
+ end
+ infs = Array.new
+ interfaces.each {|inf|
+ infs.push(classname(inf))
+ }
+ return " implements " + infs.join(", ")
+ end
end
end
Modified: trunk/ruby/src/templates/Class.erb
===================================================================
--- trunk/ruby/src/templates/Class.erb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/templates/Class.erb 2006-09-06 08:11:07 UTC (rev 87)
@@ -1,8 +1,10 @@
+
package <%= package %>{
- <% if(superclass?) %>import superclass <% end %>
+
+<%= import_statements %>
+
+ public class <%= classname %><%= superclass_decl %><%= interfaces_decl %> {
- public class <%= classname %><% if(superclass?) %> extends <%= superclass %><% end %> {
-
public function <%= classname %>() {
super();
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 07:30:20
|
Revision: 86
http://svn.sourceforge.net/asunit/?rev=86&view=rev
Author: lukebayes
Date: 2006-09-06 00:30:16 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
moved static constant out of Application and into AsUnit module
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 07:28:02 UTC (rev 85)
+++ trunk/ruby/src/asunit.rb 2006-09-06 07:30:16 UTC (rev 86)
@@ -3,7 +3,7 @@
module AsUnit
CLASS_TEMPLATE = 'Class.erb'
TEST_TEMPLATE = 'TestCase.erb'
- PROJECT_FILENAME = '.asunit'
+ PROJECT_FILE_NAME = '.asunit'
# ------------------------------------------------------------------
# COPIED FROM RAKE! Rake module singleton methods.
@@ -100,8 +100,8 @@
raise 'Project file not found, please create a new asunit project by typing "asunit -create-project [-src, -test, -templates]"'
end
Dir.chdir dir
- if(File.exists? @@PROJECT_FILE_NAME)
- return File.open(@@PROJECT_FILE_NAME, 'r')
+ if(File.exists? AsUnit::PROJECT_FILE_NAME)
+ return File.open(AsUnit::PROJECT_FILE_NAME, 'r')
end
get_project_file(File.dirname(dir))
end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 07:28:07
|
Revision: 85
http://svn.sourceforge.net/asunit/?rev=85&view=rev
Author: lukebayes
Date: 2006-09-06 00:28:02 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
added exception handling to support batch creation with singular failures
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 07:26:33 UTC (rev 84)
+++ trunk/ruby/src/asunit.rb 2006-09-06 07:28:02 UTC (rev 85)
@@ -3,9 +3,10 @@
module AsUnit
CLASS_TEMPLATE = 'Class.erb'
TEST_TEMPLATE = 'TestCase.erb'
+ PROJECT_FILENAME = '.asunit'
# ------------------------------------------------------------------
- # Rake module singleton methods.
+ # COPIED FROM RAKE! Rake module singleton methods.
#
class << self
# Current Rake Application
@@ -49,7 +50,6 @@
require 'asunit_arguments'
class Application
- @@PROJECT_FILE_NAME = '.asunit'
def initialize
super
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 07:26:41
|
Revision: 84
http://svn.sourceforge.net/asunit/?rev=84&view=rev
Author: lukebayes
Date: 2006-09-06 00:26:33 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
added exception handling to support batch creation with singular failures
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
trunk/ruby/src/create_class.rb
Added Paths:
-----------
trunk/ruby/src/asunit_arguments.rb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 06:24:57 UTC (rev 83)
+++ trunk/ruby/src/asunit.rb 2006-09-06 07:26:33 UTC (rev 84)
@@ -46,6 +46,7 @@
require 'optparse'
require 'settings'
require 'create_class'
+ require 'asunit_arguments'
class Application
@@PROJECT_FILE_NAME = '.asunit'
@@ -57,19 +58,41 @@
prefs = YAML.load(project_file.read)
settings = AsUnit::Settings.new(prefs)
+ results = Array.new
arguments.classnames.each { |name|
if(name.ends_with? "Test")
- create_class(name, settings, TEST_TEMPLATE)
+ begin
+ create_class(name, settings, TEST_TEMPLATE, arguments.force?)
+ rescue Exception => e
+ results.push(e)
+ end
else
- create_class(name, settings, AsUnit::CLASS_TEMPLATE)
- create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE)
+ begin
+ create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments.force?)
+ rescue Exception => e
+ results.push(e)
+ end
+ begin
+ create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments.force?)
+ rescue Exception => e
+ results.push(e)
+ end
end
}
+ if(results.length > 0)
+ puts results.join("\n")
+ end
end
- def create_class(name, settings, template)
- created_class = AsUnit::CreateClass.new(name, settings, template)
- created_class.run
+ def create_class(name, settings, template, force)
+ begin
+ class_creator = AsUnit::CreateClass.new(name, settings, template)
+ class_creator.run(force)
+ puts 'File Created at: ' + class_creator.final_path
+ return nil
+ rescue Exception => e
+ raise e
+ end
end
def get_project_file(dir)
@@ -84,76 +107,6 @@
end
end
- class AsUnitArguments < Hash
-
- def initialize(args)
- super
- self[:classnames] = nil
- self[:display_object] = false
- self[:interfaces] = Array.new
- self[:project_file] = nil
- self[:superclass] = nil
-
- opts = OptionParser.new do |opts|
- opts.banner = "Usage: #$0 [options] CLASSNAME(s)"
-
- opts.on('-d', '--display-object', 'class created is a subclass of flash.display.DisplayObject') do
- self[:display_object] = true
- end
-
- opts.on('-p', '--project-file [FILE]', 'use this project file instead of looking for the nearest one [FILE]') do |file|
- if(file.nil?)
- raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
- end
- self[:project_file] = (file || '$')
- end
-
- opts.on('-i', '--add-interface [STRING]', 'add an interface to this class [STRING]') do |inf|
- if(inf.nil?)
- raise '-i [--add-interface] argument must be followed by a fully-qualified interface name eg: "flash.events.IEventDispatcher"'
- end
- self[:interfaces].push(inf || '$')
- end
-
- opts.on('-s', '--superclass [STRING]', 'superclass of class being created [STRING]') do |superclass|
- if(superclass.nil?)
- raise '-s [--superclass] argument must be followed by a fully-qualified class name eg: "flash.display.DisplayObject"'
- end
- self[:superclass] = (superclass || '$')
- end
-
- opts.on_tail('-h', '--help', 'display this help and exit') do
- puts opts
- exit
- end
-
- if(args.length == 0)
- puts opts
- exit
- end
-
- opts.parse!(args)
- self[:classnames] = args
-
- end
- end
-
- def project_file
- return self[:project_file]
- end
-
- def interfaces
- return self[:interfaces]
- end
-
- def superclass
- return self[:superclass]
- end
-
- def classnames
- return self[:classnames]
- end
- end
end
class String
Added: trunk/ruby/src/asunit_arguments.rb
===================================================================
--- trunk/ruby/src/asunit_arguments.rb (rev 0)
+++ trunk/ruby/src/asunit_arguments.rb 2006-09-06 07:26:33 UTC (rev 84)
@@ -0,0 +1,84 @@
+
+require 'optparse'
+
+module AsUnit
+ class AsUnitArguments < Hash
+
+ def initialize(args)
+ super
+ self[:classnames] = nil
+ self[:display_object] = false
+ self[:force] = false
+ self[:interfaces] = Array.new
+ self[:project_file] = nil
+ self[:superclass] = nil
+
+ opts = OptionParser.new do |opts|
+ opts.banner = "Usage: #$0 [options] CLASSNAME(s)"
+
+ opts.on('-d', '--display-object', 'class created is a subclass of flash.display.DisplayObject') do
+ self[:display_object] = true
+ end
+
+ opts.on('-f', '--force', 'force overwrite even if files exist') do
+ self[:force] = true
+ end
+
+ opts.on('-p', '--project-file [FILE]', 'use this project file instead of looking for the nearest one [FILE]') do |file|
+ if(file.nil?)
+ raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
+ end
+ self[:project_file] = (file || '$')
+ end
+
+ opts.on('-i', '--add-interface [STRING]', 'add an interface to this class [STRING]') do |inf|
+ if(inf.nil?)
+ raise '-i [--add-interface] argument must be followed by a fully-qualified interface name eg: "flash.events.IEventDispatcher"'
+ end
+ self[:interfaces].push(inf || '$')
+ end
+
+ opts.on('-s', '--superclass [STRING]', 'superclass of class being created [STRING]') do |superclass|
+ if(superclass.nil?)
+ raise '-s [--superclass] argument must be followed by a fully-qualified class name eg: "flash.display.DisplayObject"'
+ end
+ self[:superclass] = (superclass || '$')
+ end
+
+ opts.on_tail('-h', '--help', 'display this help and exit') do
+ puts opts
+ exit
+ end
+
+ if(args.length == 0)
+ puts opts
+ exit
+ end
+
+ opts.parse!(args)
+ self[:classnames] = args
+
+ end
+ end
+
+ def project_file
+ return self[:project_file]
+ end
+
+ def interfaces
+ return self[:interfaces]
+ end
+
+ def superclass
+ return self[:superclass]
+ end
+
+ def classnames
+ return self[:classnames]
+ end
+
+ def force?
+ return self[:force]
+ end
+ end
+end
\ No newline at end of file
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 06:24:57 UTC (rev 83)
+++ trunk/ruby/src/create_class.rb 2006-09-06 07:26:33 UTC (rev 84)
@@ -3,39 +3,42 @@
module AsUnit
class CreateClass
- attr_accessor :settings, :template_name
+ attr_accessor :settings, :template_name
+ attr_reader :final_path
def initialize(name, settings, template)
@settings = settings
@template_name = template
@resolver = AsUnit::TemplateResolver.new name
+ @final_path = ''
end
- def run
+ def run(force=false)
src = Dir.pwd + File::SEPARATOR + settings.templates + File::SEPARATOR + template_name
- puts 'opening: ' + src
template = IO.read(src)
@resolver.template = template
parsed = @resolver.parse
- file = create_file(target_file(settings.src))
+ file = create_file(target_file(settings.src), force)
file.write(parsed)
end
- def create_file(relative)
+ def create_file(relative, force)
segments = relative.split(File::SEPARATOR)
file_name = segments.pop
current_path = ''
segments.each { |dir|
current_path << dir << File::SEPARATOR
- if(!File.exists? current_path)
+ if(!File.exists?(current_path))
Dir.mkdir(current_path)
end
}
current_path << file_name
- if(File.exists?(current_path))
- raise 'Requested File Exists at: ' + Dir.pwd + File::SEPARATOR + current_path
+ if(!force && File.exists?(current_path))
+ raise "\nRequested File Exists at: " + Dir.pwd + File::SEPARATOR + current_path + ". \n\nUse -f option to overwrite."
else
file = File.new(current_path, 'w')
+ @final_path = current_path
+ file
end
end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|