]>
git.saurik.com Git - apple/javascriptcore.git/blob - tests/mozilla/js1_2/regexp/endLine.js
   1 /* The contents of this file are subject to the Netscape Public 
   2  * License Version 1.1 (the "License"); you may not use this file 
   3  * except in compliance with the License. You may obtain a copy of 
   4  * the License at http://www.mozilla.org/NPL/ 
   6  * Software distributed under the License is distributed on an "AS 
   7  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or 
   8  * implied. See the License for the specific language governing 
   9  * rights and limitations under the License. 
  11  * The Original Code is Mozilla Communicator client code, released March 
  14  * The Initial Developer of the Original Code is Netscape Communications 
  15  * Corporation. Portions created by Netscape are 
  16  * Copyright (C) 1998 Netscape Communications Corporation. All 
  24         Description:  'Tests regular expressions containing $' 
  30         var SECTION 
= 'As described in Netscape doc "Whats new in JavaScript 1.2"'; 
  31         var VERSION 
= 'no version'; 
  33         var TITLE   
= 'RegExp: $'; 
  35         writeHeaderToLog('Executing script: endLine.js'); 
  36         writeHeaderToLog( SECTION 
+ " "+ TITLE
); 
  39         var testcases 
= new Array(); 
  41     // 'abcde'.match(new RegExp('de$')) 
  42         testcases
[count
++] = new TestCase ( SECTION
, "'abcde'.match(new RegExp('de$'))", 
  43                                             String(["de"]), String('abcde'.match(new RegExp('de$')))); 
  45     // 'ab\ncde'.match(new RegExp('..$e$')) 
  46         testcases
[count
++] = new TestCase ( SECTION
, "'ab\ncde'.match(new RegExp('..$e$'))", 
  47                                             null, 'ab\ncde'.match(new RegExp('..$e$'))); 
  49     // 'yyyyy'.match(new RegExp('xxx$')) 
  50         testcases
[count
++] = new TestCase ( SECTION
, "'yyyyy'.match(new RegExp('xxx$'))", 
  51                                             null, 'yyyyy'.match(new RegExp('xxx$'))); 
  53     // 'a$$$'.match(new RegExp('\\$+$')) 
  54         testcases
[count
++] = new TestCase ( SECTION
, "'a$$$'.match(new RegExp('\\$+$'))", 
  55                                             String(['$$$']), String('a$$$'.match(new RegExp('\\$+$')))); 
  57     // 'a$$$'.match(/\$+$/) 
  58         testcases
[count
++] = new TestCase ( SECTION
, "'a$$$'.match(/\\$+$/)", 
  59                                             String(['$$$']), String('a$$$'.match(/\$+$/))); 
  61     RegExp
.multiline 
= true; 
  62     // 'abc\n123xyz890\nxyz'.match(new RegExp('\d+$')) <multiline==true> 
  63         testcases
[count
++] = new TestCase ( SECTION
, "'abc\n123xyz890\nxyz'.match(new RegExp('\\d+$'))", 
  64                                             String(['890']), String('abc\n123xyz890\nxyz'.match(new RegExp('\\d+$')))); 
  68            for ( tc
=0; tc 
< testcases
.length
; tc
++ ) { 
  69                 testcases
[tc
].passed 
= writeTestCaseResult( 
  72                 testcases
[tc
].description 
+" = "+ 
  73                 testcases
[tc
].actual 
); 
  74                 testcases
[tc
].reason 
+= ( testcases
[tc
].passed 
) ? "" : "wrong value ";