tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

regress-137181.js (1600B)


      1 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this
      4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 /*
      7 *
      8 * Date:    12 Apr 2002
      9 * SUMMARY: delete arguments[i] should break connection to local reference
     10 *
     11 * See http://bugzilla.mozilla.org/show_bug.cgi?id=137181
     12 *
     13 */
     14 //-----------------------------------------------------------------------------
     15 var UBound = 0;
     16 var BUGNUMBER = 137181;
     17 var summary = 'delete arguments[i] should break connection to local reference';
     18 var status = '';
     19 var statusitems = [];
     20 var actual = '';
     21 var actualvalues = [];
     22 var expect= '';
     23 var expectedvalues = [];
     24 
     25 
     26 status = inSection(1);
     27 function f1(x)
     28 {
     29  x = 1;
     30  delete arguments[0];
     31  return x;
     32 }
     33 actual = f1(0); // (bug: Rhino was returning |undefined|)
     34 expect = 1;
     35 addThis();
     36 
     37 
     38 status = inSection(2);
     39 function f2(x)
     40 {
     41  x = 1;
     42  delete arguments[0];
     43  arguments[0] = -1;
     44  return x;
     45 }
     46 actual = f2(0); // (bug: Rhino was returning -1)
     47 expect = 1;
     48 addThis();
     49 
     50 
     51 
     52 //-----------------------------------------------------------------------------
     53 test();
     54 //-----------------------------------------------------------------------------
     55 
     56 
     57 
     58 function addThis()
     59 {
     60  statusitems[UBound] = status;
     61  actualvalues[UBound] = actual;
     62  expectedvalues[UBound] = expect;
     63  UBound++;
     64 }
     65 
     66 
     67 function test()
     68 {
     69  printBugNumber(BUGNUMBER);
     70  printStatus(summary);
     71 
     72  for (var i=0; i<UBound; i++)
     73  {
     74    reportCompare(expectedvalues[i], actualvalues[i], statusitems[i]);
     75  }
     76 }