js/src/tests/js1_5/extensions/toLocaleFormat-01.js

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

     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 = 291494;
     8 var summary = 'Date.prototype.toLocaleFormat extension';
     9 var actual = '';
    10 var expect = '';
    11 var temp;
    13 /*
    14  * SpiderMonkey only.
    15  *
    16  * When the output of toLocaleFormat exceeds 100 bytes toLocaleFormat
    17  * defaults to using toString to produce the result.
    18 */
    20 enterFunc ('test');
    21 printBugNumber(BUGNUMBER);
    22 printStatus (summary);
    24 var date = new Date("06/05/2005 00:00:00 GMT-0000");
    26 expect = date.getTimezoneOffset() > 0 ? 'Sat' : 'Sun';
    27 actual = date.toLocaleFormat('%a');
    28 reportCompare(expect, actual, 'Date.toLocaleFormat("%a")');
    30 expect = date.getTimezoneOffset() > 0 ? 'Saturday' : 'Sunday';
    31 actual = date.toLocaleFormat('%A');
    32 reportCompare(expect, actual, 'Date.toLocaleFormat("%A")');
    34 expect = 'Jun';
    35 actual = date.toLocaleFormat('%b');
    36 reportCompare(expect, actual, 'Date.toLocaleFormat("%b")');
    38 expect = 'June';
    39 actual = date.toLocaleFormat('%B');
    40 reportCompare(expect, actual, 'Date.toLocaleFormat("%B")');
    42 expect = (date.getTimezoneOffset() > 0) ? '04' : '05';
    43 actual = date.toLocaleFormat('%d');
    44 reportCompare(expect, actual, 'Date.toLocaleFormat("%d")');
    46 expect = '0';
    47 actual = String((Number(date.toLocaleFormat('%H')) +
    48                  date.getTimezoneOffset()/60) % 24);
    49 reportCompare(expect, actual, 'Date.toLocaleFormat(%H)');
    51 expect = '12';
    52 actual = String(Number(date.toLocaleFormat('%I')) +
    53                 date.getTimezoneOffset()/60);
    54 reportCompare(expect, actual, 'Date.toLocaleFormat(%I)');
    56 expect = String(155 + ((date.getTimezoneOffset() > 0) ? 0 : 1));
    57 actual = date.toLocaleFormat('%j');
    58 reportCompare(expect, actual, 'Date.toLocaleFormat("%j")');
    60 expect = '06';
    61 actual = date.toLocaleFormat('%m');
    62 reportCompare(expect, actual, 'Date.toLocaleFormat("%m")');
    64 expect = '00';
    65 actual = date.toLocaleFormat('%M');
    66 reportCompare(expect, actual, 'Date.toLocaleFormat("%M")');
    68 expect = true;
    69 temp   = date.toLocaleFormat('%p');
    70 actual = temp == 'AM' || date.toLocaleFormat('%p') == 'PM';
    71 reportCompare(expect, actual, 'Date.toLocaleFormat("%p") is AM or PM');
    73 expect = '00';
    74 actual = date.toLocaleFormat('%S');
    75 reportCompare(expect, actual, 'Date.toLocaleFormat("%S")');
    77 expect = String(22 + ((date.getTimezoneOffset() > 0) ? 0 : 1));
    78 actual = date.toLocaleFormat('%U');
    79 reportCompare(expect, actual, 'Date.toLocaleFormat("%U")');
    81 expect = String((6 + ((date.getTimezoneOffset() > 0) ? 0 : 1))%7);
    82 actual = date.toLocaleFormat('%w');
    83 reportCompare(expect, actual, 'Date.toLocaleFormat("%w")');
    85 expect = '22';
    86 actual = date.toLocaleFormat('%W');
    87 reportCompare(expect, actual, 'Date.toLocaleFormat("%W")');
    89 expect = '05';
    90 actual = date.toLocaleFormat('%y');
    91 reportCompare(expect, actual, 'Date.toLocaleFormat("%y")');
    93 expect = '2005';
    94 actual = date.toLocaleFormat('%Y');
    95 reportCompare(expect, actual, 'Date.toLocaleFormat("%Y")');
    97 expect = '%';
    98 actual = date.toLocaleFormat('%%');
    99 reportCompare(expect, actual, 'Date.toLocaleFormat("%%")');
   102 expect = '1899 99';
   103 temp='%Y %y';
   104 actual = new Date(0, 0, 0, 13, 14, 15, 0).toLocaleFormat(temp);
   105 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   107 expect = '1899189918991899189918991899189918991899189918991899189918991899189918991899189918991899';
   108 temp = '%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   109 actual = new Date(0, 0, 0, 13, 14, 15, 0).toLocaleFormat(temp);
   110 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   112 expect = 'xxx189918991899189918991899189918991899189918991899189918991899189918991899189918991899189918991899';
   113 temp = 'xxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   114 actual = new Date(0, 0, 0, 13, 14, 15, 0).toLocaleFormat(temp);
   115 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   117 expect = new Date(0, 0, 0, 13, 14, 15, 0).toString();
   118 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   119 actual = new Date(0, 0, 0, 13, 14, 15, 0).toLocaleFormat(temp);
   120 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   122 expect = 'xxxx189918991899189918991899189918991899';
   123 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   124 actual = new Date(0, 0, 0, 13, 14, 15, 0).toLocaleFormat(temp);
   125 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   128 expect = '-51 49';
   129 temp = '%Y %y';
   130 actual = new Date(-51, 0).toLocaleFormat(temp);
   131 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   133 expect = '-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51';
   134 temp = '%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   135 actual = new Date(-51, 0).toLocaleFormat(temp);
   136 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   138 expect = 'xxx-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51-51';
   139 temp = 'xxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   140 actual = new Date(-51, 0).toLocaleFormat(temp);
   141 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   143 expect = new Date(-51, 0).toString();
   144 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   145 actual = new Date(-51, 0).toLocaleFormat(temp);
   146 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   149 expect = '1851 51';
   150 temp = '%Y %y';
   151 actual = new Date(1851, 0).toLocaleFormat(temp);
   152 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   154 expect = '1851185118511851185118511851185118511851185118511851185118511851185118511851185118511851';
   155 temp = '%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   156 actual = new Date(1851, 0).toLocaleFormat(temp);
   157 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   159 expect = 'xxx185118511851185118511851185118511851185118511851185118511851185118511851185118511851185118511851';
   160 temp = 'xxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   161 actual = new Date(1851, 0).toLocaleFormat(temp);
   162 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   164 expect = new Date(1851, 0).toString();
   165 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   166 actual = new Date(1851, 0).toLocaleFormat(temp);
   167 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   170 expect = '-1 99';
   171 temp = '%Y %y';
   172 actual = new Date(-1, 0).toLocaleFormat(temp);
   173 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   175 expect = '-100 00';
   176 temp = '%Y %y';
   177 actual = new Date(-100, 0).toLocaleFormat(temp);
   178 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   180 expect = '1900 00';
   181 temp = '%Y %y';
   182 actual = new Date(0, 0).toLocaleFormat(temp);
   183 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   185 expect = '1901 01';
   186 temp = '%Y %y';
   187 actual = new Date(1, 0).toLocaleFormat(temp);
   188 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   190 expect = '1970 70';
   191 temp = '%Y %y';
   192 actual = new Date(1970, 0).toLocaleFormat(temp);
   193 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   196 expect = new Date(32767, 0).toString();
   197 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   198 actual = new Date(32767, 0).toLocaleFormat(temp);
   199 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   201 expect = '32767327673276732767327673276732767327673276732767327673276732767327673276732767327673276732767';
   202 temp = '%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   203 actual = new Date(32767, 0).toLocaleFormat(temp);
   204 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   206 expect = 'xxxx32767327673276732767327673276732767327673276732767327673276732767327673276732767327673276732767';
   207 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   208 actual = new Date(32767, 0).toLocaleFormat(temp);
   209 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   211 expect = new Date(32767, 0).toString();
   212 temp = 'xxxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   213 actual = new Date(32767, 0).toLocaleFormat(temp);
   214 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   217 expect = '-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999';
   218 temp = '%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   219 actual = new Date(-9999, 0).toLocaleFormat(temp);
   220 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   222 expect = 'xxxx-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999-9999';
   223 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   224 actual = new Date(-9999, 0).toLocaleFormat(temp);
   225 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');
   227 expect = new Date(-9999, 0).toString();
   228 temp = 'xxxx%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y%Y';
   229 actual = new Date(-9999, 0).toLocaleFormat(temp);
   230 reportCompare(expect, actual, 'Date.toLocaleFormat("'+temp+'")');

mercurial