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
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* 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): morse@netscape.com, pschwartau@netscape.com
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* Date: 29 October 2001
218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*
228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* SUMMARY: Regression test for bug 107138
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* See http://bugzilla.mozilla.org/show_bug.cgi?id=107138
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* The bug: arr['1'] == undefined instead of arr['1'] == 'one'.
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* The bug was intermittent and did not always occur...
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*
288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project* The cnSTRESS constant defines how many times to repeat this test.
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*/
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project//-----------------------------------------------------------------------------
318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar UBound = 0;
328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar cnSTRESS = 10;
338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar cnDASH = '-';
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar bug = 107138;
358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar summary = 'Regression test for bug 107138';
368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar status = '';
378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar statusitems = [];
388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar actual = '';
398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar actualvalues = [];
408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar expect= '';
418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar expectedvalues = [];
428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvar arr = ['zero', 'one', 'two', 'three', 'four', 'five',
458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project           'six', 'seven', 'eight', 'nine', 'ten'];
468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project// This bug was intermittent. Stress-test it.
498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectfor (var j=0; j<cnSTRESS; j++)
508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 1);
528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[0];
538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'zero';
548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 2);
578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['0'];
588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'zero';
598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 3);
628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[1];
638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'one';
648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 4);
678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['1'];
688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'one';
698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 5);
728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[2];
738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'two';
748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 6);
778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['2'];
788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'two';
798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 7);
828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[3];
838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'three';
848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 8);
878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['3'];
888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'three';
898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 9);
928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[4];
938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'four';
948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 10);
978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['4'];
988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'four';
998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 11);
1028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[5];
1038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'five';
1048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 12);
1078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['5'];
1088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'five';
1098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 13);
1128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[6];
1138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'six';
1148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 14);
1178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['6'];
1188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'six';
1198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 15);
1228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[7];
1238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'seven';
1248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 16);
1278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['7'];
1288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'seven';
1298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 17);
1328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[8];
1338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'eight';
1348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 18);
1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['8'];
1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'eight';
1398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 19);
1428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[9];
1438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'nine';
1448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 20);
1478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['9'];
1488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'nine';
1498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 21);
1528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr[10];
1538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'ten';
1548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  status = inSection(j + cnDASH + 22);
1578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actual = arr['10'];
1588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expect = 'ten';
1598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  addThis();
1608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project//-----------------------------------------------------------------------------
1648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttest();
1658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project//-----------------------------------------------------------------------------
1668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectfunction addThis()
1708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  statusitems[UBound] = status;
1728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  actualvalues[UBound] = actual;
1738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  expectedvalues[UBound] = expect;
1748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  UBound++;
1758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectfunction test()
1798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  enterFunc ('test');
1818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  printBugNumber (bug);
1828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  printStatus (summary);
1838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  for (var i=0; i<UBound; i++)
1858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  {
1868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    reportCompare(expectedvalues[i], actualvalues[i], statusitems[i]);
1878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  }
1888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project  exitFunc ('test');
1908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
191