[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: tests/khtmltests/regression/tests/js
From: Harri Porten <porten () kde ! org>
Date: 2005-07-26 21:12:45
Message-ID: 1122412365.605341.28810.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 439012 by porten:
more detailed toString() and toLocalString() testing
M +39 -0 Array.js
--- trunk/tests/khtmltests/regression/tests/js/Array.js #439011:439012
@@ -147,3 +147,42 @@
shouldBe("propnames[0]","'0'");
shouldBe("propnames[1]","'1'");
shouldBe("propnames[2]","'2'");
+
+function testToString() {
+ // backup
+ var backupNumberToString = Number.prototype.toString;
+ var backupNumberToLocaleString = Number.prototype.toLocaleString;
+ var backupRegExpToString = RegExp.prototype.toString;
+ var backupRegExpToLocaleString = RegExp.prototype.toLocaleString;
+
+ // change functions
+ Number.prototype.toString = function() { return "toString"; }
+ Number.prototype.toLocaleString = function() { return "toLocaleString"; }
+ RegExp.prototype.toString = function() { return "toString2"; }
+ RegExp.prototype.toLocaleString = function() { return "toLocaleString2"; }
+
+ // the tests
+ shouldBe("[1].toString()", "'1'");
+ shouldBe("[1].toLocaleString()", "'toLocaleString'");
+ Number.prototype.toLocaleString = "invalid";
+ shouldBe("[1].toLocaleString()", "'1'");
+ shouldBe("[/r/].toString()", "'toString2'");
+ shouldBe("[/r/].toLocaleString()", "'toLocaleString2'");
+ RegExp.prototype.toLocaleString = "invalid";
+ shouldBe("[/r/].toLocaleString()", "'toString2'");
+
+ var caught = false;
+ try {
+ [{ toString : 0 }].toString();
+ } catch (e) {
+ caught = true;
+ }
+ shouldBeTrue("caught");
+
+ // restore
+ Number.prototype.toString = backupNumberToString;
+ Number.prototype.toLocaleString = backupNumberToLocaleString;
+ RegExp.prototype.toString = backupRegExpToString;
+ RegExp.prototype.toLocaleString = backupRegExpToLocaleString;
+}
+
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic