Changeset 20118 in webkit for trunk/JavaScriptCore/tests


Ignore:
Timestamp:
Mar 12, 2007, 10:44:39 AM (18 years ago)
Author:
kmccullo
Message:

Reviewed by .

  • Update tests for new DST rules.
  • tests/mozilla/ecma/shell.js:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/tests/mozilla/ecma/shell.js

    • Property allow-tabs set to true
    r11995 r20118  
    498498        t =     t -     LocalTZA();
    499499
    500         var     dst_start =     GetFirstSundayInApril(t) + 2*msPerHour;
    501         var     dst_end   =     GetLastSundayInOctober(t)+ 2*msPerHour;
     500        var     dst_start = GetSecondSundayInMarch(t) + 2*msPerHour;
     501        var     dst_end   = GetFirstSundayInNovember(t)+ 2*msPerHour;
    502502
    503503        if ( t >= dst_start     && t < dst_end ) {
     
    514514        return UTC(dst_start  + LocalTZA());
    515515}
    516 function GetFirstSundayInApril( t )     {
     516function GetSecondSundayInMarch( t ) {
    517517        var     year = YearFromTime(t);
    518518        var     leap = InLeapYear(t);
    519519
    520         var     april = TimeFromYear(year) + TimeInMonth(0,     leap) + TimeInMonth(1,leap)     +
    521         TimeInMonth(2,leap);
    522 
    523         for     ( var first_sunday = april;     WeekDay(first_sunday) > 0;
    524                 first_sunday += msPerDay )
     520        var     march = TimeFromYear(year) + TimeInMonth(0, leap) + TimeInMonth(1,leap);
     521
     522        var sundayCount = 0;
     523        var flag = true;
     524        for ( var second_sunday = march; flag; second_sunday += msPerDay )
     525        {
     526                if (WeekDay(second_sunday) == 0) {
     527                        if(++sundayCount == 2)
     528                                flag = false;
     529                }
     530        }
     531
     532        return second_sunday;
     533}
     534function GetFirstSundayInNovember( t ) {
     535        var year = YearFromTime(t);
     536        var leap = InLeapYear(t);
     537
     538        for ( var nov = TimeFromYear(year), m = 0; m < 11; m++ ) {
     539                nov += TimeInMonth(m, leap);
     540        }
     541        for ( var first_sunday = nov; WeekDay(first_sunday) > 0;
     542                first_sunday += msPerDay        )
    525543        {
    526544                ;
    527545        }
    528 
    529546        return first_sunday;
    530 }
    531 function GetLastSundayInOctober( t ) {
    532         var     year = YearFromTime(t);
    533         var     leap = InLeapYear(t);
    534 
    535         for     ( var oct =     TimeFromYear(year),     m =     0; m < 9; m++ ) {
    536                 oct     += TimeInMonth(m, leap);
    537         }
    538         for     ( var last_sunday =     oct     + 30*msPerDay; WeekDay(last_sunday)     > 0;
    539                 last_sunday     -= msPerDay     )
    540         {
    541                 ;
    542         }
    543         return last_sunday;
    544547}
    545548function LocalTime(     t )     {
Note: See TracChangeset for help on using the changeset viewer.