summaryrefslogtreecommitdiff
path: root/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5
diff options
context:
space:
mode:
authorDavid Fugate <dfugate@microsoft.com>2011-09-25 12:14:01 -0700
committerDavid Fugate <dfugate@microsoft.com>2011-09-25 12:14:01 -0700
commit79a1c6c96b4fb24e429f60beb0b9f6840ce4b27f (patch)
tree7a9ee453960cc74dce42cd81f2c6c31418caadb5 /external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5
parentb81a5d9a03f8581f95192547f5db08c5e2238392 (diff)
downloadtest262-79a1c6c96b4fb24e429f60beb0b9f6840ce4b27f.tar.gz
external/contributions/Microsoft/ietc_262modified/* consists of Microsoft's test262
contributions which have been modified (generally based on bug feedback). Doing this as we don't want to modify the original contribution.
Diffstat (limited to 'external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5')
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-10.js53
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-11.js42
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-12.js42
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-13.js50
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-14.js42
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-15.js42
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-16.js43
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-2.js36
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-3.js36
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-4.js39
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-5.js37
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-6.js41
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-7.js41
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-8.js49
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-9.js53
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-1.js35
-rw-r--r--external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-2.js38
17 files changed, 719 insertions, 0 deletions
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-10.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-10.js
new file mode 100644
index 000000000..d2390377e
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-10.js
@@ -0,0 +1,53 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-10",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-10.js",
+
+ description: "Date.prototype.toISOString - RangeError is not thrown when value of date is Date(1970, 0, -99999999, 0, 0, 0, 1), the time zone is UTC(0)",
+
+ test: function testcase() {
+ var timeZoneMinutes = new Date().getTimezoneOffset() * (-1);
+ var date, dateStr;
+
+ if (timeZoneMinutes > 0) {
+ date = new Date(1970, 0, -99999999, 0, 0, 0, 1);
+
+ try {
+ date.toISOString();
+ return false;
+ } catch (e) {
+ return e instanceof RangeError;
+ }
+ } else {
+ date = new Date(1970, 0, -99999999, 0, 0 + timeZoneMinutes + 60, 0, 1);
+
+ dateStr = date.toISOString();
+
+ return dateStr[dateStr.length - 1] === "Z";
+ }
+ },
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-11.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-11.js
new file mode 100644
index 000000000..315189203
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-11.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-11",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-11.js",
+
+ description: "Date.prototype.toISOString - RangeError is not thrown when value of date is Date(1970, 0, 100000001, 0, 0, 0, -1), the time zone is UTC(0)",
+
+ test: function testcase() {
+ var timeZoneMinutes = new Date().getTimezoneOffset() * (-1);
+ var date, dateStr;
+
+ date = new Date(1970, 0, 100000001, 0, 0 + timeZoneMinutes - 60, 0, -1);
+ dateStr = date.toISOString();
+
+ return dateStr[dateStr.length - 1] === "Z";
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+}); \ No newline at end of file
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-12.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-12.js
new file mode 100644
index 000000000..a26efbcc4
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-12.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-12",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-12.js",
+
+ description: "Date.prototype.toISOString - RangeError is not thrown when value of date is Date(1970, 0, 100000001, 0, 0, 0, 0), the time zone is UTC(0)",
+
+ test: function testcase() {
+ var timeZoneMinutes = new Date().getTimezoneOffset() * (-1);
+ var date, dateStr;
+
+ date = new Date(1970, 0, 100000001, 0, 0 + timeZoneMinutes - 60, 0, 0);
+ dateStr = date.toISOString();
+
+ return dateStr[dateStr.length - 1] === "Z";
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+}); \ No newline at end of file
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-13.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-13.js
new file mode 100644
index 000000000..2de448b05
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-13.js
@@ -0,0 +1,50 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-13",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-13.js",
+
+ description: "Date.prototype.toISOString - RangeError is thrown when value of date is Date(1970, 0, 100000001, 0, 0, 0, 1), the time zone is UTC(0)",
+
+ test: function testcase() {
+ var timeZoneMinutes = new Date().getTimezoneOffset() * (-1);
+ var date, dateStr;
+ try {
+ if (timeZoneMinutes > 0) {
+ date = new Date(1970, 0, 100000001, 0, 0 + timeZoneMinutes + 60, 0, 1);
+ dateStr = date.toISOString();
+ return false;
+ } else {
+ date = new Date(1970, 0, 100000001, 0, 0, 0, 1);
+ dateStr = date.toISOString();
+ return false;
+ }
+ } catch (e) {
+ return e instanceof RangeError;
+ }
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+}); \ No newline at end of file
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-14.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-14.js
new file mode 100644
index 000000000..49f8c7faa
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-14.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-14",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-14.js",
+
+ description: "Date.prototype.toISOString - when value of year is -Infinity Date.prototype.toISOString throw the RangeError",
+
+ test: function testcase() {
+ var date = new Date(-Infinity, 1, 70, 0, 0, 0);
+
+ try {
+ date.toISOString();
+ } catch (ex) {
+ return ex instanceof RangeError;
+ }
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+}); \ No newline at end of file
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-15.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-15.js
new file mode 100644
index 000000000..ed79c5b7a
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-15.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-15",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-15.js",
+
+ description: "Date.prototype.toISOString - value of year is Infinity Date.prototype.toISOString throw the RangeError",
+
+ test: function testcase() {
+ var date = new Date(Infinity, 1, 70, 0, 0, 0);
+
+ try {
+ date.toISOString();
+ } catch (ex) {
+ return ex instanceof RangeError;
+ }
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+}); \ No newline at end of file
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-16.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-16.js
new file mode 100644
index 000000000..e03145947
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-16.js
@@ -0,0 +1,43 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-16",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-16.js",
+
+ description: "Date.prototype.toISOString - when this is a String object that value format is 'YYYY-MM-DDTHH:mm:ss.sssZ' Date.prototype.toISOString throw the TypeError",
+
+ test: function testcase() {
+ var date = new String("1970-01-00000:00:00.000Z");
+
+ try {
+ Date.prototype.toISOString.call(date);
+ return false;
+ } catch (ex) {
+ return ex instanceof TypeError;
+ }
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+}); \ No newline at end of file
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-2.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-2.js
new file mode 100644
index 000000000..e377d98e2
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-2.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-2",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-2.js",
+
+ description: "Date.prototype.toISOString must exist as a function taking 0 parameters",
+
+ test: function testcase() {
+ return Date.prototype.toISOString.length === 0;
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-3.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-3.js
new file mode 100644
index 000000000..589915aba
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-3.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-3",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-3.js",
+
+ description: "Date.prototype.toISOString must exist as a function",
+
+ test: function testcase() {
+ return typeof (Date.prototype.toISOString) === "function";
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-4.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-4.js
new file mode 100644
index 000000000..5460de72e
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-4.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-4",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-4.js",
+
+ description: "Date.prototype.toISOString - format of returned string is 'YYYY-MM-DDTHH:mm:ss.sssZ', the time zone is UTC(0)",
+
+ test: function testcase() {
+ var date = new Date(1999, 09, 10, 10, 10, 10, 10);
+ var localDate = new Date(date.getTime() - date.getTimezoneOffset() * 60000);
+
+ return localDate.toISOString() === "1999-10-10T10:10:10.010Z";
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-5.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-5.js
new file mode 100644
index 000000000..e6c0cc5bb
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-5.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-5",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-5.js",
+
+ description: "Date.prototype.toISOString - The returned string is the UTC time zone(0)",
+
+ test: function testcase() {
+ var dateStr = (new Date()).toISOString();
+ return dateStr[dateStr.length - 1] === "Z";
+ },
+
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-6.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-6.js
new file mode 100644
index 000000000..90ce8d0c6
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-6.js
@@ -0,0 +1,41 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-6",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-6.js",
+
+ description: "Date.prototype.toISOString - TypeError is thrown when this is any other objects instead of Date object",
+
+ test: function testcase() {
+
+ try {
+ Date.prototype.toISOString.call([]);
+ return false;
+ } catch (ex) {
+ return ex instanceof TypeError;
+ }
+ },
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-7.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-7.js
new file mode 100644
index 000000000..0d5346d68
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-7.js
@@ -0,0 +1,41 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-7",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-7.js",
+
+ description: "Date.prototype.toISOString - TypeError is thrown when this is any primitive values",
+
+ test: function testcase() {
+
+ try {
+ Date.prototype.toISOString.call(15);
+ return false;
+ } catch (ex) {
+ return ex instanceof TypeError;
+ }
+ },
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+}); \ No newline at end of file
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-8.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-8.js
new file mode 100644
index 000000000..4c45f6a7a
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-8.js
@@ -0,0 +1,49 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-8",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-8.js",
+
+ description: "Date.prototype.toISOString - RangeError is thrown when value of date is Date(1970, 0, -99999999, 0, 0, 0, -1), the time zone is UTC(0)",
+
+ test: function testcase() {
+ var timeZoneMinutes = new Date().getTimezoneOffset() * (-1);
+ var date, dateStr;
+ try {
+ if (timeZoneMinutes > 0) {
+ date = new Date(1970, 0, -99999999, 0, 0, 0, -1);
+ } else {
+ date = new Date(1970, 0, -99999999, 0, 0 + timeZoneMinutes - 60, 0, -1);
+ }
+
+ dateStr = date.toISOString();
+
+ return false;
+ } catch (e) {
+ return e instanceof RangeError;
+ }
+ },
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-9.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-9.js
new file mode 100644
index 000000000..a090c9dbd
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-9.js
@@ -0,0 +1,53 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest({
+ id: "15.9.5.43-0-9",
+
+ path: "TestCases/chapter15/15.9/15.9.5/15.9.5.43/15.9.5.43-0-9.js",
+
+ description: "Date.prototype.toISOString - RangeError is not thrown when value of date is Date(1970, 0, -99999999, 0, 0, 0, 0), the time zone is UTC(0)",
+
+ test: function testcase() {
+ var timeZoneMinutes = new Date().getTimezoneOffset() * (-1);
+ var date, dateStr;
+
+ if (timeZoneMinutes > 0) {
+ date = new Date(1970, 0, -99999999, 0, 0, 0, 0);
+
+ try {
+ date.toISOString();
+ return false;
+ } catch (e) {
+ return e instanceof RangeError;
+ }
+ } else {
+ date = new Date(1970, 0, -99999999, 0, 0 + timeZoneMinutes + 60, 0, 0);
+
+ dateStr = date.toISOString();
+
+ return dateStr[dateStr.length - 1] === "Z";
+ }
+ },
+ precondition: function prereq() {
+ return fnExists(Date.prototype.toISOString);
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-1.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-1.js
new file mode 100644
index 000000000..f5c75fa7d
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-1.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest( {
+id: "15.9.5.44-0-1",
+
+path: "TestCases/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-1.js",
+
+description: "Date.prototype.toJSON must exist as a function",
+
+test: function testcase() {
+ var f = Date.prototype.toJSON;
+ if (typeof(f) === "function") {
+ return true;
+ }
+ }
+});
diff --git a/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-2.js b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-2.js
new file mode 100644
index 000000000..eebb1a483
--- /dev/null
+++ b/external/contributions/Microsoft/ietc_262modified/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-2.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ES5Harness.registerTest( {
+id: "15.9.5.44-0-2",
+
+path: "TestCases/chapter15/15.9/15.9.5/15.9.5.44/15.9.5.44-0-2.js",
+
+description: "Date.prototype.toJSON must exist as a function taking 1 parameter",
+
+test: function testcase() {
+ if (Date.prototype.toJSON.length === 1) {
+ return true;
+ }
+ },
+
+precondition: function prereq() {
+ return fnExists(Date.prototype.toJSON);
+ }
+});