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