js/src/tests/js1_5/extensions/regress-351463-01.js

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 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/. */
     6 //-----------------------------------------------------------------------------
     7 var BUGNUMBER = 351463;
     8 var summary = 'Treat hyphens as not special adjacent to CharacterClassEscapes in character classes';
     9 var actual = '';
    10 var expect = '';
    13 //-----------------------------------------------------------------------------
    14 test();
    15 //-----------------------------------------------------------------------------
    17 function test()
    18 {
    19   enterFunc ('test');
    20   printBugNumber(BUGNUMBER);
    21   printStatus (summary);
    23   var r;
    24   var s = 'a0- z';
    26   r = '([\\d-\\s]+)';
    27   expect = ['0- ', '0- '] + '';
    28   actual = null;
    30   try
    31   {
    32     actual = new RegExp(r).exec(s) + '';
    33   }
    34   catch(ex)
    35   {
    36     actual = ex + '';
    37   }
    38   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
    40   r = '([\\s-\\d]+)';
    41   expect = ['0- ', '0- '] + '';
    42   actual = null;
    44   try
    45   {
    46     actual = new RegExp(r).exec(s) + '';
    47   }
    48   catch(ex)
    49   {
    50     actual = ex + '';
    51   }
    52   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
    54   r = '([\\D-\\s]+)';
    55   expect = ['a', 'a'] + '';
    56   actual = null;
    58   try
    59   {
    60     actual = new RegExp(r).exec(s) + '';
    61   }
    62   catch(ex)
    63   {
    64     actual = ex + '';
    65   }
    66   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
    68   r = '([\\s-\\D]+)';
    69   expect = ['a', 'a'] + '';
    70   actual = null;
    72   try
    73   {
    74     actual = new RegExp(r).exec(s) + '';
    75   }
    76   catch(ex)
    77   {
    78     actual = ex + '';
    79   }
    80   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
    82   r = '([\\d-\\S]+)';
    83   expect = ['a0-', 'a0-'] + '';
    84   actual = null;
    86   try
    87   {
    88     actual = new RegExp(r).exec(s) + '';
    89   }
    90   catch(ex)
    91   {
    92     actual = ex + '';
    93   }
    94   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
    96   r = '([\\S-\\d]+)';
    97   expect = ['a0-', 'a0-'] + '';
    98   actual = null;
   100   try
   101   {
   102     actual = new RegExp(r).exec(s) + '';
   103   }
   104   catch(ex)
   105   {
   106     actual = ex + '';
   107   }
   108   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   110   r = '([\\D-\\S]+)';
   111   expect = ['a0- z', 'a0- z'] + '';
   112   actual = null;
   114   try
   115   {
   116     actual = new RegExp(r).exec(s) + '';
   117   }
   118   catch(ex)
   119   {
   120     actual = ex + '';
   121   }
   122   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   124   r = '([\\S-\\D]+)';
   125   expect = ['a0- z', 'a0- z'] + '';
   126   actual = null;
   128   try
   129   {
   130     actual = new RegExp(r).exec(s) + '';
   131   }
   132   catch(ex)
   133   {
   134     actual = ex + '';
   135   }
   136   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   138 // --
   140   r = '([\\w-\\s]+)';
   141   expect = ['a0- z', 'a0- z'] + '';
   142   actual = null;
   144   try
   145   {
   146     actual = new RegExp(r).exec(s) + '';
   147   }
   148   catch(ex)
   149   {
   150     actual = ex + '';
   151   }
   152   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   154   r = '([\\s-\\w]+)';
   155   expect = ['a0- z', 'a0- z'] + '';
   156   actual = null;
   158   try
   159   {
   160     actual = new RegExp(r).exec(s) + '';
   161   }
   162   catch(ex)
   163   {
   164     actual = ex + '';
   165   }
   166   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   168   r = '([\\W-\\s]+)';
   169   expect = ['- ', '- '] + '';
   170   actual = null;
   172   try
   173   {
   174     actual = new RegExp(r).exec(s) + '';
   175   }
   176   catch(ex)
   177   {
   178     actual = ex + '';
   179   }
   180   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   182   r = '([\\s-\\W]+)';
   183   expect = ['- ', '- '] + '';
   184   actual = null;
   186   try
   187   {
   188     actual = new RegExp(r).exec(s) + '';
   189   }
   190   catch(ex)
   191   {
   192     actual = ex + '';
   193   }
   194   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   196   r = '([\\w-\\S]+)';
   197   expect = ['a0-', 'a0-'] + '';
   198   actual = null;
   200   try
   201   {
   202     actual = new RegExp(r).exec(s) + '';
   203   }
   204   catch(ex)
   205   {
   206     actual = ex + '';
   207   }
   208   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   210   r = '([\\S-\\w]+)';
   211   expect = ['a0-', 'a0-'] + '';
   212   actual = null;
   214   try
   215   {
   216     actual = new RegExp(r).exec(s) + '';
   217   }
   218   catch(ex)
   219   {
   220     actual = ex + '';
   221   }
   222   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   224   r = '([\\W-\\S]+)';
   225   expect = ['a0- z', 'a0- z'] + '';
   226   actual = null;
   228   try
   229   {
   230     actual = new RegExp(r).exec(s) + '';
   231   }
   232   catch(ex)
   233   {
   234     actual = ex + '';
   235   }
   236   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   238   r = '([\\S-\\W]+)';
   239   expect = ['a0- z', 'a0- z'] + '';
   240   actual = null;
   242   try
   243   {
   244     actual = new RegExp(r).exec(s) + '';
   245   }
   246   catch(ex)
   247   {
   248     actual = ex + '';
   249   }
   250   reportCompare(expect, actual, summary + ': /' + r + '/.exec("' + s + '")');
   253   exitFunc ('test');
   254 }

mercurial