michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: michael@0: /** michael@0: File Name: 15.9.5.5.js michael@0: ECMA Section: 15.9.5.5 michael@0: Description: Date.prototype.getYear michael@0: michael@0: This function is specified here for backwards compatibility only. The michael@0: function getFullYear is much to be preferred for nearly all purposes, michael@0: because it avoids the "year 2000 problem." michael@0: michael@0: 1. Let t be this time value. michael@0: 2. If t is NaN, return NaN. michael@0: 3. Return YearFromTime(LocalTime(t)) 1900. michael@0: michael@0: Author: christine@netscape.com michael@0: Date: 12 november 1997 michael@0: */ michael@0: michael@0: var SECTION = "15.9.5.5"; michael@0: var VERSION = "ECMA_1"; michael@0: startTest(); michael@0: var TITLE = "Date.prototype.getYear()"; michael@0: michael@0: writeHeaderToLog( SECTION + " "+ TITLE); michael@0: michael@0: addTestCase( TIME_NOW ); michael@0: addTestCase( TIME_0000 ); michael@0: addTestCase( TIME_1970 ); michael@0: addTestCase( TIME_1900 ); michael@0: addTestCase( TIME_2000 ); michael@0: addTestCase( UTC_FEB_29_2000 ); michael@0: michael@0: new TestCase( SECTION, michael@0: "(new Date(NaN)).getYear()", michael@0: NaN, michael@0: (new Date(NaN)).getYear() ); michael@0: michael@0: new TestCase( SECTION, michael@0: "Date.prototype.getYear.length", michael@0: 0, michael@0: Date.prototype.getYear.length ); michael@0: michael@0: test(); michael@0: michael@0: function addTestCase( t ) { michael@0: new TestCase( SECTION, michael@0: "(new Date("+t+")).getYear()", michael@0: GetYear(YearFromTime(LocalTime(t))), michael@0: (new Date(t)).getYear() ); michael@0: michael@0: new TestCase( SECTION, michael@0: "(new Date("+(t+1)+")).getYear()", michael@0: GetYear(YearFromTime(LocalTime(t+1))), michael@0: (new Date(t+1)).getYear() ); michael@0: michael@0: new TestCase( SECTION, michael@0: "(new Date("+(t-1)+")).getYear()", michael@0: GetYear(YearFromTime(LocalTime(t-1))), michael@0: (new Date(t-1)).getYear() ); michael@0: michael@0: new TestCase( SECTION, michael@0: "(new Date("+(t-TZ_ADJUST)+")).getYear()", michael@0: GetYear(YearFromTime(LocalTime(t-TZ_ADJUST))), michael@0: (new Date(t-TZ_ADJUST)).getYear() ); michael@0: michael@0: new TestCase( SECTION, michael@0: "(new Date("+(t+TZ_ADJUST)+")).getYear()", michael@0: GetYear(YearFromTime(LocalTime(t+TZ_ADJUST))), michael@0: (new Date(t+TZ_ADJUST)).getYear() ); michael@0: } michael@0: function GetYear( year ) { michael@0: return year - 1900; michael@0: }