diff -r 000000000000 -r 6474c204b198 js/src/tests/ecma_5/misc/regexp-functions-with-undefined.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/src/tests/ecma_5/misc/regexp-functions-with-undefined.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,43 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var a = /undefined/.exec(); +assertEq(a[0], 'undefined'); +assertEq(a.length, 1); + +a = /undefined/.exec(undefined); +assertEq(a[0], 'undefined'); +assertEq(a.length, 1); + +assertEq(/undefined/.test(), true); +assertEq(/undefined/.test(undefined), true); + +assertEq(/aaaa/.exec(), null); +assertEq(/aaaa/.exec(undefined), null); + +assertEq(/aaaa/.test(), false); +assertEq(/aaaa/.test(undefined), false); + + +assertEq("undefined".search(), 0); +assertEq("undefined".search(undefined), 0); +assertEq("aaaa".search(), 0); +assertEq("aaaa".search(undefined), 0); + +a = "undefined".match(); +assertEq(a[0], ""); +assertEq(a.length, 1); +a = "undefined".match(undefined); +assertEq(a[0], ""); +assertEq(a.length, 1); +a = "aaaa".match(); +assertEq(a[0], ""); +assertEq(a.length, 1); +a = "aaaa".match(undefined); +assertEq(a[0], ""); +assertEq(a.length, 1); + +if (typeof reportCompare === "function") + reportCompare(true, true);