Home | History | Annotate | Download | only in regress
      1 // Copyright 2014 the V8 project authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 function timezone(tz) {
      6   var str = (new Date(2014, 0, 10)).toString();
      7   if (tz == "CET") {
      8     return str == "Fri Jan 10 2014 00:00:00 GMT+0100 (CET)";
      9   }
     10   if (tz == "BRT") {
     11     return str == "Fri Jan 10 2014 00:00:00 GMT-0200 (BRST)";
     12   }
     13   if (tz == "PST") {
     14     return str == "Fri Jan 10 2014 00:00:00 GMT-0800 (PST)";
     15   }
     16   return false;
     17 }
     18 
     19 if (timezone("CET")) {
     20   assertEquals("Sat Mar 29 2014 22:59:00 GMT+0100 (CET)",
     21                (new Date(2014, 2, 29, 22, 59)).toString());
     22   assertEquals("Sat, 29 Mar 2014 21:59:00 GMT",
     23                (new Date(2014, 2, 29, 22, 59)).toUTCString());
     24   assertEquals("Sat Mar 29 2014 23:00:00 GMT+0100 (CET)",
     25                (new Date(2014, 2, 29, 23, 0)).toString());
     26   assertEquals("Sat, 29 Mar 2014 22:00:00 GMT",
     27                (new Date(2014, 2, 29, 23, 0)).toUTCString());
     28   assertEquals("Sat Mar 29 2014 23:59:00 GMT+0100 (CET)",
     29                (new Date(2014, 2, 29, 23, 59)).toString());
     30   assertEquals("Sat, 29 Mar 2014 22:59:00 GMT",
     31                (new Date(2014, 2, 29, 23, 59)).toUTCString());
     32   assertEquals("Sun Mar 30 2014 00:00:00 GMT+0100 (CET)",
     33                (new Date(2014, 2, 30, 0, 0)).toString());
     34   assertEquals("Sat, 29 Mar 2014 23:00:00 GMT",
     35                (new Date(2014, 2, 30, 0, 0)).toUTCString());
     36   assertEquals("Sun Mar 30 2014 00:59:00 GMT+0100 (CET)",
     37                (new Date(2014, 2, 30, 0, 59)).toString());
     38   assertEquals("Sat, 29 Mar 2014 23:59:00 GMT",
     39                (new Date(2014, 2, 30, 0, 59)).toUTCString());
     40   assertEquals("Sun Mar 30 2014 01:00:00 GMT+0100 (CET)",
     41                (new Date(2014, 2, 30, 1, 0)).toString());
     42   assertEquals("Sun, 30 Mar 2014 00:00:00 GMT",
     43                (new Date(2014, 2, 30, 1, 0)).toUTCString());
     44   assertEquals("Sun Mar 30 2014 01:59:00 GMT+0100 (CET)",
     45                (new Date(2014, 2, 30, 1, 59)).toString());
     46   assertEquals("Sun, 30 Mar 2014 00:59:00 GMT",
     47                (new Date(2014, 2, 30, 1, 59)).toUTCString());
     48   assertEquals("Sun Mar 30 2014 03:00:00 GMT+0200 (CEST)",
     49                (new Date(2014, 2, 30, 2, 0)).toString());
     50   assertEquals("Sun, 30 Mar 2014 01:00:00 GMT",
     51                (new Date(2014, 2, 30, 2, 0)).toUTCString());
     52   assertEquals("Sun Mar 30 2014 03:59:00 GMT+0200 (CEST)",
     53                (new Date(2014, 2, 30, 2, 59)).toString());
     54   assertEquals("Sun, 30 Mar 2014 01:59:00 GMT",
     55                (new Date(2014, 2, 30, 2, 59)).toUTCString());
     56   assertEquals("Sun Mar 30 2014 03:00:00 GMT+0200 (CEST)",
     57                (new Date(2014, 2, 30, 3, 0)).toString());
     58   assertEquals("Sun, 30 Mar 2014 01:00:00 GMT",
     59                (new Date(2014, 2, 30, 3, 0)).toUTCString());
     60   assertEquals("Sun Mar 30 2014 03:59:00 GMT+0200 (CEST)",
     61                (new Date(2014, 2, 30, 3, 59)).toString());
     62   assertEquals("Sun, 30 Mar 2014 01:59:00 GMT",
     63                (new Date(2014, 2, 30, 3, 59)).toUTCString());
     64   assertEquals("Sun Mar 30 2014 04:00:00 GMT+0200 (CEST)",
     65                (new Date(2014, 2, 30, 4, 0)).toString());
     66   assertEquals("Sun, 30 Mar 2014 02:00:00 GMT",
     67                (new Date(2014, 2, 30, 4, 0)).toUTCString());
     68   assertEquals("Sat Oct 25 2014 22:59:00 GMT+0200 (CEST)",
     69                (new Date(2014, 9, 25, 22, 59)).toString());
     70   assertEquals("Sat, 25 Oct 2014 20:59:00 GMT",
     71                (new Date(2014, 9, 25, 22, 59)).toUTCString());
     72   assertEquals("Sat Oct 25 2014 23:00:00 GMT+0200 (CEST)",
     73                (new Date(2014, 9, 25, 23, 0)).toString());
     74   assertEquals("Sat, 25 Oct 2014 21:00:00 GMT",
     75                (new Date(2014, 9, 25, 23, 0)).toUTCString());
     76   assertEquals("Sat Oct 25 2014 23:59:00 GMT+0200 (CEST)",
     77                (new Date(2014, 9, 25, 23, 59)).toString());
     78   assertEquals("Sat, 25 Oct 2014 21:59:00 GMT",
     79                (new Date(2014, 9, 25, 23, 59)).toUTCString());
     80   assertEquals("Sun Oct 26 2014 00:00:00 GMT+0200 (CEST)",
     81                (new Date(2014, 9, 26, 0, 0)).toString());
     82   assertEquals("Sat, 25 Oct 2014 22:00:00 GMT",
     83                (new Date(2014, 9, 26, 0, 0)).toUTCString());
     84   assertEquals("Sun Oct 26 2014 00:59:00 GMT+0200 (CEST)",
     85                (new Date(2014, 9, 26, 0, 59)).toString());
     86   assertEquals("Sat, 25 Oct 2014 22:59:00 GMT",
     87                (new Date(2014, 9, 26, 0, 59)).toUTCString());
     88   assertEquals("Sun Oct 26 2014 01:00:00 GMT+0200 (CEST)",
     89                (new Date(2014, 9, 26, 1, 0)).toString());
     90   assertEquals("Sat, 25 Oct 2014 23:00:00 GMT",
     91                (new Date(2014, 9, 26, 1, 0)).toUTCString());
     92   assertEquals("Sun Oct 26 2014 01:59:00 GMT+0200 (CEST)",
     93                (new Date(2014, 9, 26, 1, 59)).toString());
     94   assertEquals("Sat, 25 Oct 2014 23:59:00 GMT",
     95                (new Date(2014, 9, 26, 1, 59)).toUTCString());
     96   assertEquals("Sun Oct 26 2014 02:00:00 GMT+0200 (CEST)",
     97                (new Date(2014, 9, 26, 2, 0)).toString());
     98   assertEquals("Sun, 26 Oct 2014 00:00:00 GMT",
     99                (new Date(2014, 9, 26, 2, 0)).toUTCString());
    100   assertEquals("Sun Oct 26 2014 02:59:00 GMT+0200 (CEST)",
    101                (new Date(2014, 9, 26, 2, 59)).toString());
    102   assertEquals("Sun, 26 Oct 2014 00:59:00 GMT",
    103                (new Date(2014, 9, 26, 2, 59)).toUTCString());
    104   assertEquals("Sun Oct 26 2014 03:00:00 GMT+0100 (CET)",
    105                (new Date(2014, 9, 26, 3, 0)).toString());
    106   assertEquals("Sun, 26 Oct 2014 02:00:00 GMT",
    107                (new Date(2014, 9, 26, 3, 0)).toUTCString());
    108   assertEquals("Sun Oct 26 2014 03:59:00 GMT+0100 (CET)",
    109                (new Date(2014, 9, 26, 3, 59)).toString());
    110   assertEquals("Sun, 26 Oct 2014 02:59:00 GMT",
    111                (new Date(2014, 9, 26, 3, 59)).toUTCString());
    112   assertEquals("Sun Oct 26 2014 04:00:00 GMT+0100 (CET)",
    113                (new Date(2014, 9, 26, 4, 0)).toString());
    114   assertEquals("Sun, 26 Oct 2014 03:00:00 GMT",
    115                (new Date(2014, 9, 26, 4, 0)).toUTCString());
    116 }
    117 
    118 if (timezone("BRT")) {
    119   assertEquals("Sat Oct 18 2014 22:59:00 GMT-0300 (BRT)",
    120                (new Date(2014, 9, 18, 22, 59)).toString());
    121   assertEquals("Sun, 19 Oct 2014 01:59:00 GMT",
    122                (new Date(2014, 9, 18, 22, 59)).toUTCString());
    123   assertEquals("Sat Oct 18 2014 23:00:00 GMT-0300 (BRT)",
    124                (new Date(2014, 9, 18, 23, 0)).toString());
    125   assertEquals("Sun, 19 Oct 2014 02:00:00 GMT",
    126                (new Date(2014, 9, 18, 23, 0)).toUTCString());
    127   assertEquals("Sat Oct 18 2014 23:59:00 GMT-0300 (BRT)",
    128                (new Date(2014, 9, 18, 23, 59)).toString());
    129   assertEquals("Sun, 19 Oct 2014 02:59:00 GMT",
    130                (new Date(2014, 9, 18, 23, 59)).toUTCString());
    131   assertEquals("Sun Oct 19 2014 01:00:00 GMT-0200 (BRST)",
    132                (new Date(2014, 9, 19, 0, 0)).toString());
    133   assertEquals("Sun, 19 Oct 2014 03:00:00 GMT",
    134                (new Date(2014, 9, 19, 0, 0)).toUTCString());
    135   assertEquals("Sun Oct 19 2014 01:59:00 GMT-0200 (BRST)",
    136                (new Date(2014, 9, 19, 0, 59)).toString());
    137   assertEquals("Sun, 19 Oct 2014 03:59:00 GMT",
    138                (new Date(2014, 9, 19, 0, 59)).toUTCString());
    139   assertEquals("Sun Oct 19 2014 01:00:00 GMT-0200 (BRST)",
    140                (new Date(2014, 9, 19, 1, 0)).toString());
    141   assertEquals("Sun, 19 Oct 2014 03:00:00 GMT",
    142                (new Date(2014, 9, 19, 1, 0)).toUTCString());
    143   assertEquals("Sun Oct 19 2014 01:59:00 GMT-0200 (BRST)",
    144                (new Date(2014, 9, 19, 1, 59)).toString());
    145   assertEquals("Sun, 19 Oct 2014 03:59:00 GMT",
    146                (new Date(2014, 9, 19, 1, 59)).toUTCString());
    147   assertEquals("Sun Oct 19 2014 02:00:00 GMT-0200 (BRST)",
    148                (new Date(2014, 9, 19, 2, 0)).toString());
    149   assertEquals("Sun, 19 Oct 2014 04:00:00 GMT",
    150                (new Date(2014, 9, 19, 2, 0)).toUTCString());
    151   assertEquals("Sun Oct 19 2014 02:59:00 GMT-0200 (BRST)",
    152                (new Date(2014, 9, 19, 2, 59)).toString());
    153   assertEquals("Sun, 19 Oct 2014 04:59:00 GMT",
    154                (new Date(2014, 9, 19, 2, 59)).toUTCString());
    155   assertEquals("Sun Oct 19 2014 03:00:00 GMT-0200 (BRST)",
    156                (new Date(2014, 9, 19, 3, 0)).toString());
    157   assertEquals("Sun, 19 Oct 2014 05:00:00 GMT",
    158                (new Date(2014, 9, 19, 3, 0)).toUTCString());
    159   assertEquals("Sun Oct 19 2014 03:59:00 GMT-0200 (BRST)",
    160                (new Date(2014, 9, 19, 3, 59)).toString());
    161   assertEquals("Sun, 19 Oct 2014 05:59:00 GMT",
    162                (new Date(2014, 9, 19, 3, 59)).toUTCString());
    163   assertEquals("Sun Oct 19 2014 04:00:00 GMT-0200 (BRST)",
    164                (new Date(2014, 9, 19, 4, 0)).toString());
    165   assertEquals("Sun, 19 Oct 2014 06:00:00 GMT",
    166                (new Date(2014, 9, 19, 4, 0)).toUTCString());
    167   assertEquals("Sat Feb 15 2014 22:59:00 GMT-0200 (BRST)",
    168                (new Date(2014, 1, 15, 22, 59)).toString());
    169   assertEquals("Sun, 16 Feb 2014 00:59:00 GMT",
    170                (new Date(2014, 1, 15, 22, 59)).toUTCString());
    171   assertEquals("Sat Feb 15 2014 23:00:00 GMT-0200 (BRST)",
    172                (new Date(2014, 1, 15, 23, 0)).toString());
    173   assertEquals("Sun, 16 Feb 2014 01:00:00 GMT",
    174                (new Date(2014, 1, 15, 23, 0)).toUTCString());
    175   assertEquals("Sat Feb 15 2014 23:59:00 GMT-0200 (BRST)",
    176                (new Date(2014, 1, 15, 23, 59)).toString());
    177   assertEquals("Sun, 16 Feb 2014 01:59:00 GMT",
    178                (new Date(2014, 1, 15, 23, 59)).toUTCString());
    179   assertEquals("Sun Feb 16 2014 00:00:00 GMT-0300 (BRT)",
    180                (new Date(2014, 1, 16, 0, 0)).toString());
    181   assertEquals("Sun, 16 Feb 2014 03:00:00 GMT",
    182                (new Date(2014, 1, 16, 0, 0)).toUTCString());
    183   assertEquals("Sun Feb 16 2014 00:59:00 GMT-0300 (BRT)",
    184                (new Date(2014, 1, 16, 0, 59)).toString());
    185   assertEquals("Sun, 16 Feb 2014 03:59:00 GMT",
    186                (new Date(2014, 1, 16, 0, 59)).toUTCString());
    187   assertEquals("Sun Feb 16 2014 01:00:00 GMT-0300 (BRT)",
    188                (new Date(2014, 1, 16, 1, 0)).toString());
    189   assertEquals("Sun, 16 Feb 2014 04:00:00 GMT",
    190                (new Date(2014, 1, 16, 1, 0)).toUTCString());
    191   assertEquals("Sun Feb 16 2014 01:59:00 GMT-0300 (BRT)",
    192                (new Date(2014, 1, 16, 1, 59)).toString());
    193   assertEquals("Sun, 16 Feb 2014 04:59:00 GMT",
    194                (new Date(2014, 1, 16, 1, 59)).toUTCString());
    195   assertEquals("Sun Feb 16 2014 02:00:00 GMT-0300 (BRT)",
    196                (new Date(2014, 1, 16, 2, 0)).toString());
    197   assertEquals("Sun, 16 Feb 2014 05:00:00 GMT",
    198                (new Date(2014, 1, 16, 2, 0)).toUTCString());
    199   assertEquals("Sun Feb 16 2014 02:59:00 GMT-0300 (BRT)",
    200                (new Date(2014, 1, 16, 2, 59)).toString());
    201   assertEquals("Sun, 16 Feb 2014 05:59:00 GMT",
    202                (new Date(2014, 1, 16, 2, 59)).toUTCString());
    203   assertEquals("Sun Feb 16 2014 03:00:00 GMT-0300 (BRT)",
    204                (new Date(2014, 1, 16, 3, 0)).toString());
    205   assertEquals("Sun, 16 Feb 2014 06:00:00 GMT",
    206                (new Date(2014, 1, 16, 3, 0)).toUTCString());
    207   assertEquals("Sun Feb 16 2014 03:59:00 GMT-0300 (BRT)",
    208                (new Date(2014, 1, 16, 3, 59)).toString());
    209   assertEquals("Sun, 16 Feb 2014 06:59:00 GMT",
    210                (new Date(2014, 1, 16, 3, 59)).toUTCString());
    211   assertEquals("Sun Feb 16 2014 04:00:00 GMT-0300 (BRT)",
    212                (new Date(2014, 1, 16, 4, 0)).toString());
    213   assertEquals("Sun, 16 Feb 2014 07:00:00 GMT",
    214                (new Date(2014, 1, 16, 4, 0)).toUTCString());
    215 }
    216 
    217 if (timezone("PST")) {
    218   assertEquals("Sat Mar 08 2014 22:59:00 GMT-0800 (PST)",
    219                (new Date(2014, 2, 8, 22, 59)).toString());
    220   assertEquals("Sun, 09 Mar 2014 06:59:00 GMT",
    221                (new Date(2014, 2, 8, 22, 59)).toUTCString());
    222   assertEquals("Sat Mar 08 2014 23:00:00 GMT-0800 (PST)",
    223                (new Date(2014, 2, 8, 23, 0)).toString());
    224   assertEquals("Sun, 09 Mar 2014 07:00:00 GMT",
    225                (new Date(2014, 2, 8, 23, 0)).toUTCString());
    226   assertEquals("Sat Mar 08 2014 23:59:00 GMT-0800 (PST)",
    227                (new Date(2014, 2, 8, 23, 59)).toString());
    228   assertEquals("Sun, 09 Mar 2014 07:59:00 GMT",
    229                (new Date(2014, 2, 8, 23, 59)).toUTCString());
    230   assertEquals("Sun Mar 09 2014 00:00:00 GMT-0800 (PST)",
    231                (new Date(2014, 2, 9, 0, 0)).toString());
    232   assertEquals("Sun, 09 Mar 2014 08:00:00 GMT",
    233                (new Date(2014, 2, 9, 0, 0)).toUTCString());
    234   assertEquals("Sun Mar 09 2014 00:59:00 GMT-0800 (PST)",
    235                (new Date(2014, 2, 9, 0, 59)).toString());
    236   assertEquals("Sun, 09 Mar 2014 08:59:00 GMT",
    237                (new Date(2014, 2, 9, 0, 59)).toUTCString());
    238   assertEquals("Sun Mar 09 2014 01:00:00 GMT-0800 (PST)",
    239                (new Date(2014, 2, 9, 1, 0)).toString());
    240   assertEquals("Sun, 09 Mar 2014 09:00:00 GMT",
    241                (new Date(2014, 2, 9, 1, 0)).toUTCString());
    242   assertEquals("Sun Mar 09 2014 01:59:00 GMT-0800 (PST)",
    243                (new Date(2014, 2, 9, 1, 59)).toString());
    244   assertEquals("Sun, 09 Mar 2014 09:59:00 GMT",
    245                (new Date(2014, 2, 9, 1, 59)).toUTCString());
    246   assertEquals("Sun Mar 09 2014 03:00:00 GMT-0700 (PDT)",
    247                (new Date(2014, 2, 9, 2, 0)).toString());
    248   assertEquals("Sun, 09 Mar 2014 10:00:00 GMT",
    249                (new Date(2014, 2, 9, 2, 0)).toUTCString());
    250   assertEquals("Sun Mar 09 2014 03:59:00 GMT-0700 (PDT)",
    251                (new Date(2014, 2, 9, 2, 59)).toString());
    252   assertEquals("Sun, 09 Mar 2014 10:59:00 GMT",
    253                (new Date(2014, 2, 9, 2, 59)).toUTCString());
    254   assertEquals("Sun Mar 09 2014 03:00:00 GMT-0700 (PDT)",
    255                (new Date(2014, 2, 9, 3, 0)).toString());
    256   assertEquals("Sun, 09 Mar 2014 10:00:00 GMT",
    257                (new Date(2014, 2, 9, 3, 0)).toUTCString());
    258   assertEquals("Sun Mar 09 2014 03:59:00 GMT-0700 (PDT)",
    259                (new Date(2014, 2, 9, 3, 59)).toString());
    260   assertEquals("Sun, 09 Mar 2014 10:59:00 GMT",
    261                (new Date(2014, 2, 9, 3, 59)).toUTCString());
    262   assertEquals("Sun Mar 09 2014 04:00:00 GMT-0700 (PDT)",
    263                (new Date(2014, 2, 9, 4, 0)).toString());
    264   assertEquals("Sun, 09 Mar 2014 11:00:00 GMT",
    265                (new Date(2014, 2, 9, 4, 0)).toUTCString());
    266   assertEquals("Sat Nov 01 2014 22:59:00 GMT-0700 (PDT)",
    267                (new Date(2014, 10, 1, 22, 59)).toString());
    268   assertEquals("Sun, 02 Nov 2014 05:59:00 GMT",
    269                (new Date(2014, 10, 1, 22, 59)).toUTCString());
    270   assertEquals("Sat Nov 01 2014 23:00:00 GMT-0700 (PDT)",
    271                (new Date(2014, 10, 1, 23, 0)).toString());
    272   assertEquals("Sun, 02 Nov 2014 06:00:00 GMT",
    273                (new Date(2014, 10, 1, 23, 0)).toUTCString());
    274   assertEquals("Sat Nov 01 2014 23:59:00 GMT-0700 (PDT)",
    275                (new Date(2014, 10, 1, 23, 59)).toString());
    276   assertEquals("Sun, 02 Nov 2014 06:59:00 GMT",
    277                (new Date(2014, 10, 1, 23, 59)).toUTCString());
    278   assertEquals("Sun Nov 02 2014 00:00:00 GMT-0700 (PDT)",
    279                (new Date(2014, 10, 2, 0, 0)).toString());
    280   assertEquals("Sun, 02 Nov 2014 07:00:00 GMT",
    281                (new Date(2014, 10, 2, 0, 0)).toUTCString());
    282   assertEquals("Sun Nov 02 2014 00:59:00 GMT-0700 (PDT)",
    283                (new Date(2014, 10, 2, 0, 59)).toString());
    284   assertEquals("Sun, 02 Nov 2014 07:59:00 GMT",
    285                (new Date(2014, 10, 2, 0, 59)).toUTCString());
    286   assertEquals("Sun Nov 02 2014 01:00:00 GMT-0700 (PDT)",
    287                (new Date(2014, 10, 2, 1, 0)).toString());
    288   assertEquals("Sun, 02 Nov 2014 08:00:00 GMT",
    289                (new Date(2014, 10, 2, 1, 0)).toUTCString());
    290   assertEquals("Sun Nov 02 2014 01:59:00 GMT-0700 (PDT)",
    291                (new Date(2014, 10, 2, 1, 59)).toString());
    292   assertEquals("Sun, 02 Nov 2014 08:59:00 GMT",
    293                (new Date(2014, 10, 2, 1, 59)).toUTCString());
    294   assertEquals("Sun Nov 02 2014 02:00:00 GMT-0800 (PST)",
    295                (new Date(2014, 10, 2, 2, 0)).toString());
    296   assertEquals("Sun, 02 Nov 2014 10:00:00 GMT",
    297                (new Date(2014, 10, 2, 2, 0)).toUTCString());
    298   assertEquals("Sun Nov 02 2014 02:59:00 GMT-0800 (PST)",
    299                (new Date(2014, 10, 2, 2, 59)).toString());
    300   assertEquals("Sun, 02 Nov 2014 10:59:00 GMT",
    301                (new Date(2014, 10, 2, 2, 59)).toUTCString());
    302   assertEquals("Sun Nov 02 2014 03:00:00 GMT-0800 (PST)",
    303                (new Date(2014, 10, 2, 3, 0)).toString());
    304   assertEquals("Sun, 02 Nov 2014 11:00:00 GMT",
    305                (new Date(2014, 10, 2, 3, 0)).toUTCString());
    306   assertEquals("Sun Nov 02 2014 03:59:00 GMT-0800 (PST)",
    307                (new Date(2014, 10, 2, 3, 59)).toString());
    308   assertEquals("Sun, 02 Nov 2014 11:59:00 GMT",
    309                (new Date(2014, 10, 2, 3, 59)).toUTCString());
    310   assertEquals("Sun Nov 02 2014 04:00:00 GMT-0800 (PST)",
    311                (new Date(2014, 10, 2, 4, 0)).toString());
    312   assertEquals("Sun, 02 Nov 2014 12:00:00 GMT",
    313                (new Date(2014, 10, 2, 4, 0)).toUTCString());
    314 }
    315