18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/* 28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* The contents of this file are subject to the Netscape Public 38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* License Version 1.1 (the "License"); you may not use this file 48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* except in compliance with the License. You may obtain a copy of 58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* the License at http://www.mozilla.org/NPL/ 68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* Software distributed under the License is distributed on an "AS IS" 88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* basis, WITHOUT WARRANTY OF ANY KIND, either expressed 98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* or implied. See the License for the specific language governing 108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* rights and limitations under the License. 118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* The Original Code is mozilla.org code. 138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* The Initial Developer of the Original Code is Netscape 158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* Communications Corporation. Portions created by Netscape are 168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* Copyright (C) 1998 Netscape Communications Corporation. 178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* All Rights Reserved. 188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* Contributor(s): pschwartau@netscape.com 208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* Date: 17 September 2001 218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* SUMMARY: Regression test for Bugzilla bug 100199 238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* See http://bugzilla.mozilla.org/show_bug.cgi?id=100199 248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* The empty character class [] is a valid RegExp construct: the condition 268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* that a given character belong to a set containing no characters. As such, 278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* it can never be met and is always FALSE. Similarly, [^] is a condition 288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* that matches any given character and is always TRUE. 298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* Neither one of these conditions should cause syntax errors in a RegExp. 318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*/ 328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project//----------------------------------------------------------------------------- 338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar i = 0; 348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar bug = 100199; 358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar summary = '[], [^] are valid RegExp conditions. Should not cause errors -'; 368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar status = ''; 378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar statusmessages = new Array(); 388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar pattern = ''; 398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar patterns = new Array(); 408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar string = ''; 418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar strings = new Array(); 428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar actualmatch = ''; 438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar actualmatches = new Array(); 448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar expectedmatch = ''; 458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar expectedmatches = new Array(); 468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpattern = /[]/; 498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'abc'; 508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(1); 518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ''; 568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(2); 578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '['; 628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(3); 638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '/'; 688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(4); 698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '['; 748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(5); 758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ']'; 808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(6); 818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '[]'; 868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(7); 878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '[ ]'; 928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(8); 938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ']['; 988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(9); 998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpattern = /a[]/; 1058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'abc'; 1068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(10); 1078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ''; 1128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(11); 1138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'a['; 1188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(12); 1198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'a[]'; 1248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(13); 1258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '['; 1308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(14); 1318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ']'; 1368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(15); 1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '[]'; 1428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(16); 1438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '[ ]'; 1488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(17); 1498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ']['; 1548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(18); 1558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; 1578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpattern = /[^]/; 1618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'abc'; 1628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(19); 1638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('a'); 1658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ''; 1688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(20); 1698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; //there are no characters to test against the condition 1718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '\/'; 1748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(21); 1758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('/'); 1778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '\['; 1808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(22); 1818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('['); 1838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '['; 1868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(23); 1878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('['); 1898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ']'; 1928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(24); 1938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 1948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array(']'); 1958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 1968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '[]'; 1988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(25); 1998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('['); 2018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = '[ ]'; 2048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(26); 2058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('['); 2078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ']['; 2108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(27); 2118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array(']'); 2138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpattern = /a[^]/; 2178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'abc'; 2188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(28); 2198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('ab'); 2218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = ''; 2248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(29); 2258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = null; //there are no characters to test against the condition 2278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'a['; 2308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(30); 2318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('a['); 2338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'a]'; 2368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(31); 2378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('a]'); 2398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'a[]'; 2428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(32); 2438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('a['); 2458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'a[ ]'; 2488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(33); 2498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('a['); 2518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project string = 'a]['; 2548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project status = inSection(34); 2558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatch = string.match(pattern); 2568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatch = Array('a]'); 2578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project addThis(); 2588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project//----------------------------------------------------------------------------- 2638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttest(); 2648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project//----------------------------------------------------------------------------- 2658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectfunction addThis() 2698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 2708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project statusmessages[i] = status; 2718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project patterns[i] = pattern; 2728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project strings[i] = string; 2738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project actualmatches[i] = actualmatch; 2748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project expectedmatches[i] = expectedmatch; 2758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project i++; 2768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 2778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectfunction test() 2808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 2818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project enterFunc ('test'); 2828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project printBugNumber (bug); 2838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project printStatus (summary); 2848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project testRegExp(statusmessages, patterns, strings, actualmatches, expectedmatches); 2858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project exitFunc ('test'); 2868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 287