michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: michael@0: /** michael@0: Filename: string_search.js michael@0: Description: 'Tests the search method on Strings using regular expressions' michael@0: michael@0: Author: Nick Lerissa michael@0: Date: March 12, 1998 michael@0: */ michael@0: michael@0: var SECTION = 'As described in Netscape doc "Whats new in JavaScript 1.2"'; michael@0: var VERSION = 'no version'; michael@0: startTest(); michael@0: var TITLE = 'String: search'; michael@0: michael@0: writeHeaderToLog('Executing script: string_search.js'); michael@0: writeHeaderToLog( SECTION + " "+ TITLE); michael@0: michael@0: // 'abcdefg'.search(/d/) michael@0: new TestCase ( SECTION, "'abcdefg'.search(/d/)", michael@0: 3, 'abcdefg'.search(/d/)); michael@0: michael@0: // 'abcdefg'.search(/x/) michael@0: new TestCase ( SECTION, "'abcdefg'.search(/x/)", michael@0: -1, 'abcdefg'.search(/x/)); michael@0: michael@0: // 'abcdefg123456hijklmn'.search(/\d+/) michael@0: new TestCase ( SECTION, "'abcdefg123456hijklmn'.search(/\d+/)", michael@0: 7, 'abcdefg123456hijklmn'.search(/\d+/)); michael@0: michael@0: // 'abcdefg123456hijklmn'.search(new RegExp()) michael@0: new TestCase ( SECTION, "'abcdefg123456hijklmn'.search(new RegExp())", michael@0: 0, 'abcdefg123456hijklmn'.search(new RegExp())); michael@0: michael@0: // 'abc'.search(new RegExp('$')) michael@0: new TestCase ( SECTION, "'abc'.search(new RegExp('$'))", michael@0: 3, 'abc'.search(new RegExp('$'))); michael@0: michael@0: // 'abc'.search(new RegExp('^')) michael@0: new TestCase ( SECTION, "'abc'.search(new RegExp('^'))", michael@0: 0, 'abc'.search(new RegExp('^'))); michael@0: michael@0: // 'abc1'.search(/.\d/) michael@0: new TestCase ( SECTION, "'abc1'.search(/.\d/)", michael@0: 2, 'abc1'.search(/.\d/)); michael@0: michael@0: // 'abc1'.search(/\d{2}/) michael@0: new TestCase ( SECTION, "'abc1'.search(/\d{2}/)", michael@0: -1, 'abc1'.search(/\d{2}/)); michael@0: michael@0: test();