1# Copyright 2013 the V8 project authors. All rights reserved. 2# Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without 5# modification, are permitted provided that the following conditions 6# are met: 7# 1. Redistributions of source code must retain the above copyright 8# notice, this list of conditions and the following disclaimer. 9# 2. Redistributions in binary form must reproduce the above copyright 10# notice, this list of conditions and the following disclaimer in the 11# documentation and/or other materials provided with the distribution. 12# 13# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY 14# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 15# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 16# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY 17# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 18# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 19# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 20# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 22# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 24This page tests handling of parenthetical assertions. 25 26On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". 27 28 29PASS regex1.exec('xx') is ['xx','x'] 30PASS regex2.exec('baaabaac') is ['baaabaac','ba',undefined,'abaac'] 31PASS regex3.exec('aaab') is ['aab','a','aab'] 32PASS regex4.exec('aaab') is ['aab','a','aab'] 33PASS regex5.exec('P11') is ['P11','1','1'] 34PASS regex6.exec('ababbbcbc') is ['ababb','bb','b'] 35PASS regex7.exec('xx') is ['xx','x'] 36PASS regex8.exec('xx') is ['xx','x','x'] 37PASS regex9.exec('xy') is null 38PASS regex10.exec('xy') is null 39PASS regex11.exec('xy') is null 40PASS regex12.exec('x') is null 41PASS regex12.exec('xx') is ['xx','x'] 42PASS regex12.exec('xxy') is ['xx','x'] 43PASS regex13.exec('xzzzx') is ['xzzzx','x'] 44PASS regex13.exec('xzzzxy') is ['xzzzx','x'] 45PASS regex14.exec('aabc') is ['aabc','a','bc'] 46PASS regex14.exec('aabcx') is ['aabc','a','bc'] 47PASS regex15.exec('aabc') is ['aabc','a','bc'] 48PASS regex15.exec('aabcx') is ['aabc','a','bc'] 49PASS regex16.exec('ab') is null 50PASS regex16.exec('abc') is ['abc','bc'] 51PASS regex17.exec('ab') is ['a','ab'] 52PASS regex17.exec('abc') is ['a','ab'] 53PASS regex18.exec('x') is ['x',''] 54PASS regex18.exec('xx') is ['x','xx'] 55PASS regex18.exec('xxx') is ['x','xx'] 56PASS regex19.exec('x') is ['x','',undefined] 57PASS regex19.exec('xx') is ['x','xx','xx'] 58PASS regex19.exec('xxx') is ['x','xx','xx'] 59PASS regex20.exec('x') is null 60PASS regex20.exec('xx') is ['x','xx'] 61PASS regex20.exec('xxx') is ['x','xx'] 62PASS regex21.exec('aab') is ['aab'] 63PASS regex22.exec('55up') is null 64PASS regex23.exec('ax') is null 65PASS regex24.exec('x') is null 66PASS successfullyParsed is true 67 68TEST COMPLETE 69 70