gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog testsuite/misc-swfc.all/moviecl...


From: Zou Lunkai
Subject: [Gnash-commit] gnash ChangeLog testsuite/misc-swfc.all/moviecl...
Date: Tue, 04 Sep 2007 02:10:09 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Zou Lunkai <zoulunkai>  07/09/04 02:10:09

Modified files:
        .              : ChangeLog 
        testsuite/misc-swfc.all: movieclip_destruction_test1.sc 

Log message:
        * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: fix some 
bogus tests
         caused by bogus compiler convertion, and a few more tests, all passed.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4207&r2=1.4208
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/misc-swfc.all/movieclip_destruction_test1.sc?cvsroot=gnash&r1=1.5&r2=1.6

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4207
retrieving revision 1.4208
diff -u -b -r1.4207 -r1.4208
--- ChangeLog   4 Sep 2007 01:06:52 -0000       1.4207
+++ ChangeLog   4 Sep 2007 02:10:08 -0000       1.4208
@@ -1,3 +1,8 @@
+2007-09-04 Zou Lunkai <address@hidden>
+
+       * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: fix some 
bogus tests
+         caused by bogus compiler convertion, and a few more tests, all passed.
+         
 2007-09-03 Sandro Santilli <address@hidden>
 
        * server/character.cpp (unload): call queueEventHandler before setting

Index: testsuite/misc-swfc.all/movieclip_destruction_test1.sc
===================================================================
RCS file: 
/sources/gnash/gnash/testsuite/misc-swfc.all/movieclip_destruction_test1.sc,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- testsuite/misc-swfc.all/movieclip_destruction_test1.sc      3 Sep 2007 
09:42:14 -0000       1.5
+++ testsuite/misc-swfc.all/movieclip_destruction_test1.sc      4 Sep 2007 
02:10:09 -0000       1.6
@@ -122,37 +122,68 @@
   .end
 
 
-// seperate tests to see if the whole function body get executed?
-// yes in this case.
+//
+// Seperate tests.
+// Test that the whole function body still get executed even when
+// 'this' object is null(removed by MovieClip.removeMovieClip()).
 .frame 8
   .action:
     _root.createEmptyMovieClip("mc4", 100);
-    
+    mc4Ref = mc4;
     check_equals(typeof(_root.mc4), 'movieclip');
     
     mc4.func = function (clip)
     {
        _root.check_equals(this.valueOf(), mc4);
       _root.testvar1 = 100;
-      clip.removeMovieClip(); 
-      _root.xcheck_equals(typeof(_root.mc4), 'undefined');
-      _root.xcheck_equals(typeof(this), 'movieclip');
-      _root.xcheck_equals(this.valueOf(), null);  // this pointer is null!
+      // don't use clip.removeMovieClip here, to avoid bogus compiler 
conversion.
+      // 'removeMovieClip' is converted to lower case with the above format.
+      // This is a swf7 file.
+      clip['removeMovieClip']();  
+      _root.check_equals(typeof(_root.mc4), 'undefined');
+      _root.check_equals(typeof(this), 'movieclip');
+      _root.check_equals(this.valueOf(), null);  // this pointer is null!
       _root.testvar2 = 200;
     };
     
-    mc4.fun(mc4); // invoke the function and remove mc
+    mc4.func(mc4); // invoke the function and remove mc4
+    
+    check_equals(_root.testvar1, 100);
+    check_equals(_root.testvar2, 200);
+    check_equals(typeof(_root.mc4), 'undefined');  
+  .end
+
+//
+// seperate tests.
+// similar to tests in frame8, but onUnload is defined for the given movieClip
+.frame 10
+  .action:  
+    _root.createEmptyMovieClip("mc5", 200);
+    check_equals(typeof(_root.mc5), 'movieclip');
+    
+    mc5.onUnload = function () {}; // Define onUnload for mc5
     
-    xcheck_equals(_root.testvar1, 100);
-    xcheck_equals(_root.testvar2, 200);
-    xcheck_equals(typeof(_root.mc4), 'undefined');
+    mc5.func = function (clip)
+    {
+      _root.check_equals(this.valueOf(), mc5);
+      _root.testvar1 = 300;
+      clip['removeMovieClip']();
+      _root.check_equals(typeof(_root.mc5), 'movieclip');
+      _root.check_equals(typeof(this), 'movieclip');
+      _root.check_equals(this, _root.mc5);  
+      _root.testvar2 = 400;
+    };
     
-    _root.note(mc4);
+    mc5.func(mc5); // invoke the function and remove mc5
+    
+    check_equals(_root.testvar1, 300);
+    check_equals(_root.testvar2, 400);
+    check_equals(typeof(_root.mc5), 'movieclip');  
+    check_equals(mc5.getDepth(), -32969); 
     
     stop();
     totals();
   .end
  
-
 .end
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]