gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash/testsuite/actionscript.all Object.as


From: Sandro Santilli
Subject: [Gnash-commit] gnash/testsuite/actionscript.all Object.as
Date: Mon, 07 Apr 2008 17:09:40 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/04/07 17:09:40

Modified files:
        testsuite/actionscript.all: Object.as 

Log message:
        More tests for user-defined getter-setter cache value

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/actionscript.all/Object.as?cvsroot=gnash&r1=1.58&r2=1.59

Patches:
Index: Object.as
===================================================================
RCS file: /sources/gnash/gnash/testsuite/actionscript.all/Object.as,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -b -r1.58 -r1.59
--- Object.as   7 Apr 2008 16:31:18 -0000       1.58
+++ Object.as   7 Apr 2008 17:09:40 -0000       1.59
@@ -21,7 +21,7 @@
 // execute it like this gnash -1 -r 0 -v out.swf
 
 
-rcsid="$Id: Object.as,v 1.58 2008/04/07 16:31:18 strk Exp $";
+rcsid="$Id: Object.as,v 1.59 2008/04/07 17:09:40 strk Exp $";
 #include "check.as"
 
 // Test things in Class Object (swf5~swf8)
@@ -498,6 +498,36 @@
 r = o.addProperty('lundef', null, setter);
 check(!r);
 
+// not-setting setter
+noset_setter = function(v) { noset_setter_calls++; }; // doesn't set cache
+simple_test_getter = function() { return this.test; };
+o = {};
+o.addProperty("test", simple_test_getter, noset_setter);
+noset_setter_calls=0;
+o.test = 2;
+check_equals(noset_setter_calls, 1);
+v = o.test;
+xcheck_equals(v, 2); // did still set the cache
+o.test = 5;
+check_equals(noset_setter_calls, 2);
+v = o.test;
+xcheck_equals(v, 5);
+
+// test setter visibility of value (multiplies * 2)
+timetwo_test_setter = function(v) {
+       // note("timetwo_test_setter sees this.test as "+this.test);
+       this.test *= 2;
+};
+o = {};
+o.test = 1;
+o.addProperty("test", simple_test_getter, timetwo_test_setter);
+o.test = 2;
+v = o.test;
+xcheck_equals(v, 2);
+o.test = 5;
+v = o.test;
+xcheck_equals(v, 5);
+
 
 // Object.addProperty wasn't in SWF5
 #endif // OUTPUT_VERSION > 5
@@ -747,6 +777,6 @@
 #endif
 
 #if OUTPUT_VERSION >= 6
-totals(240);
+totals(246);
 #endif
 




reply via email to

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