S15.10.2.8_A3_T24.js (1541B)
1 // Copyright 2009 the Sputnik authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 info: | 6 Parentheses of the form ( Disjunction ) serve both to group the components of the Disjunction pattern together and to save the result of the match. 7 The result can be used either in a backreference (\ followed by a nonzero decimal number), 8 referenced in a replace string, 9 or returned as part of an array from the regular expression matching function 10 es5id: 15.10.2.8_A3_T24 11 description: > 12 Execute /(A)?(A.*)/.exec("zxcasd;fl\\\ ^AAaaAAaaaf;lrlrzs") and 13 check results 14 ---*/ 15 16 var __string = "zxcasd;fl\\\ ^AAaaAAaaaf;lrlrzs"; 17 18 var __executed = /(A)?(A.*)/.exec(__string); 19 20 var __expected = ["AAaaAAaaaf;lrlrzs","A","AaaAAaaaf;lrlrzs"]; 21 __expected.index = 13; 22 __expected.input = __string; 23 24 assert.sameValue( 25 __executed.length, 26 __expected.length, 27 'The value of __executed.length is expected to equal the value of __expected.length' 28 ); 29 30 assert.sameValue( 31 __executed.index, 32 __expected.index, 33 'The value of __executed.index is expected to equal the value of __expected.index' 34 ); 35 36 assert.sameValue( 37 __executed.input, 38 __expected.input, 39 'The value of __executed.input is expected to equal the value of __expected.input' 40 ); 41 42 for(var index=0; index<__expected.length; index++) { 43 assert.sameValue( 44 __executed[index], 45 __expected[index], 46 'The value of __executed[index] is expected to equal the value of __expected[index]' 47 ); 48 } 49 50 reportCompare(0, 0);