js/src/tests/ecma/Date/15.9.5.23-7.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:c53799c1004c
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/. */
5
6
7 /**
8 File Name: 15.9.5.23-2.js
9 ECMA Section: 15.9.5.23
10 Description: Date.prototype.setTime
11
12 1. If the this value is not a Date object, generate a runtime error.
13 2. Call ToNumber(time).
14 3. Call TimeClip(Result(1)).
15 4. Set the [[Value]] property of the this value to Result(2).
16 5. Return the value of the [[Value]] property of the this value.
17
18 Author: christine@netscape.com
19 Date: 12 november 1997
20 */
21
22 var SECTION = "15.9.5.23-2";
23 var VERSION = "ECMA_1";
24 startTest();
25 var TITLE = "Date.prototype.setTime()";
26
27 writeHeaderToLog( SECTION + " "+ TITLE);
28
29 test_times = new Array( TIME_NOW, TIME_0000, TIME_1970, TIME_1900, TIME_2000,
30 UTC_FEB_29_2000, UTC_JAN_1_2005 );
31
32
33 for ( var j = 0; j < test_times.length; j++ ) {
34 addTestCase( new Date(TIME_2000), test_times[j] );
35 }
36
37
38 new TestCase( SECTION,
39 "(new Date(NaN)).setTime()",
40 NaN,
41 (new Date(NaN)).setTime() );
42
43 new TestCase( SECTION,
44 "Date.prototype.setTime.length",
45 1,
46 Date.prototype.setTime.length );
47 test();
48
49 function addTestCase( d, t ) {
50 new TestCase( SECTION,
51 "( "+d+" ).setTime("+t+")",
52 t,
53 d.setTime(t) );
54
55 new TestCase( SECTION,
56 "( "+d+" ).setTime("+(t+1.1)+")",
57 TimeClip(t+1.1),
58 d.setTime(t+1.1) );
59
60 new TestCase( SECTION,
61 "( "+d+" ).setTime("+(t+1)+")",
62 t+1,
63 d.setTime(t+1) );
64
65 new TestCase( SECTION,
66 "( "+d+" ).setTime("+(t-1)+")",
67 t-1,
68 d.setTime(t-1) );
69
70 new TestCase( SECTION,
71 "( "+d+" ).setTime("+(t-TZ_ADJUST)+")",
72 t-TZ_ADJUST,
73 d.setTime(t-TZ_ADJUST) );
74
75 new TestCase( SECTION,
76 "( "+d+" ).setTime("+(t+TZ_ADJUST)+")",
77 t+TZ_ADJUST,
78 d.setTime(t+TZ_ADJUST) );
79 }

mercurial