tor-browser

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

regress-172699.js (1546B)


      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:    07 Oct 2002
      9 * SUMMARY: UTF-8 decoder should not accept overlong sequences
     10 * See http://bugzilla.mozilla.org/show_bug.cgi?id=172699
     11 *
     12 */
     13 //-----------------------------------------------------------------------------
     14 var UBound = 0;
     15 var BUGNUMBER = 172699;
     16 var summary = 'UTF-8 decoder should not accept overlong sequences';
     17 var status = '';
     18 var statusitems = [];
     19 var actual = '';
     20 var actualvalues = [];
     21 var expect= '';
     22 var expectedvalues = [];
     23 
     24 
     25 status = inSection(1);
     26 expect = "URIError thrown";
     27 try
     28 {
     29  decodeURI("%C0%AF");
     30  actual = "no error thrown";
     31 }
     32 catch (e)
     33 {
     34  if (e instanceof URIError)
     35    actual = "URIError thrown";
     36  else if (e instanceof Error)
     37    actual = "wrong error thrown: " + e.name;
     38  else
     39    actual = "non-error thrown: " + e;
     40 }
     41 addThis();
     42 
     43 
     44 
     45 //-----------------------------------------------------------------------------
     46 test();
     47 //-----------------------------------------------------------------------------
     48 
     49 
     50 
     51 function addThis()
     52 {
     53  statusitems[UBound] = status;
     54  actualvalues[UBound] = actual;
     55  expectedvalues[UBound] = expect;
     56  UBound++;
     57 }
     58 
     59 
     60 function test()
     61 {
     62  printBugNumber(BUGNUMBER);
     63  printStatus(summary);
     64 
     65  for (var i=0; i<UBound; i++)
     66  {
     67    reportCompare(expectedvalues[i], actualvalues[i], statusitems[i]);
     68  }
     69 }