diff options
Diffstat (limited to 'test/built-ins/RegExp/prototype/exec/S15.10.6.2_A1_T15.js')
-rw-r--r-- | test/built-ins/RegExp/prototype/exec/S15.10.6.2_A1_T15.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/test/built-ins/RegExp/prototype/exec/S15.10.6.2_A1_T15.js b/test/built-ins/RegExp/prototype/exec/S15.10.6.2_A1_T15.js new file mode 100644 index 000000000..cd9f348ea --- /dev/null +++ b/test/built-ins/RegExp/prototype/exec/S15.10.6.2_A1_T15.js @@ -0,0 +1,43 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: > + RegExp.prototype.exec(string) Performs a regular expression match of ToString(string) against the regular expression and + returns an Array object containing the results of the match, or null if the string did not match +es5id: 15.10.6.2_A1_T15 +description: "String is {toString:function(){return false;}} and RegExp is /LS/i" +---*/ + +__executed = /LS/i.exec({toString:function(){return false}}); + +__expected = ["ls"]; +__expected.index=2; +__expected.input="false"; + +//CHECK#0 +if ((__executed instanceof Array) !== true) { + $ERROR('#0: __executed = /LS/i.exec({toString:function(){return false}}); (__executed instanceof Array) === true'); +} + +//CHECK#1 +if (__executed.length !== __expected.length) { + $ERROR('#1: __executed = /LS/i.exec({toString:function(){return false}}); __executed.length === ' + __expected.length + '. Actual: ' + __executed.length); +} + +//CHECK#2 +if (__executed.index !== __expected.index) { + $ERROR('#2: __executed = /LS/i.exec({toString:function(){return false}}); __executed.index === ' + __expected.index + '. Actual: ' + __executed.index); +} + +//CHECK#3 +if (__executed.input !== __expected.input) { + $ERROR('#3: __executed = /LS/i.exec({toString:function(){return false}}); __executed.input === ' + __expected.input + '. Actual: ' + __executed.input); +} + +//CHECK#4 +for(var index=0; index<__expected.length; index++) { + if (__executed[index] !== __expected[index]) { + $ERROR('#4: __executed = /LS/i.exec({toString:function(){return false}}); __executed[' + index + '] === ' + __expected[index] + '. Actual: ' + __executed[index]); + } +} |