From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- .../non262/extensions/error-tostring-function.js | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 js/src/tests/non262/extensions/error-tostring-function.js (limited to 'js/src/tests/non262/extensions/error-tostring-function.js') diff --git a/js/src/tests/non262/extensions/error-tostring-function.js b/js/src/tests/non262/extensions/error-tostring-function.js new file mode 100644 index 0000000000..86751c39d8 --- /dev/null +++ b/js/src/tests/non262/extensions/error-tostring-function.js @@ -0,0 +1,45 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 894653; +var summary = + "Error.prototype.toString called on function objects should work as on any " + + "object"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function ErrorToString(v) +{ + return Error.prototype.toString.call(v); +} + +// The name property of function objects isn't standardized, so this must be an +// extension-land test. + +assertEq(ErrorToString(function f(){}), "f"); +assertEq(ErrorToString(function g(){}), "g"); +assertEq(ErrorToString(function(){}), ""); + +var fn1 = function() {}; +fn1.message = "ohai"; +assertEq(ErrorToString(fn1), "fn1: ohai"); + +var fn2 = function blerch() {}; +fn2.message = "fnord"; +assertEq(ErrorToString(fn2), "blerch: fnord"); + +var fn3 = function() {}; +fn3.message = ""; +assertEq(ErrorToString(fn3), "fn3"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); -- cgit v1.2.3