1# Copyright 2013 the V8 project authors. All rights reserved.
2# Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
3#
4# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions
6# are met:
7# 1.  Redistributions of source code must retain the above copyright
8#     notice, this list of conditions and the following disclaimer.
9# 2.  Redistributions in binary form must reproduce the above copyright
10#     notice, this list of conditions and the following disclaimer in the
11#     documentation and/or other materials provided with the distribution.
12#
13# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
14# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
17# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
18# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
19# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
20# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
22# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23
24This tests if the Date setters handle invalid parameters correctly resulting in a NaN date and if a recovery from such a NaN date is only possible by using the date.setTime() and date.set[[UTC]Full]Year() functions.
25
26On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
27
28
29PASS date.setTime(arg0)
30PASS date.setTime()
31PASS recover from NaN date using date.setTime()
32PASS date.setTime passed all tests
33PASS date.setMilliseconds(arg0)
34PASS date.setMilliseconds()
35PASS no recovering from NaN date using date.setMilliseconds(arg0)
36PASS date.setMilliseconds passed all tests
37PASS date.setUTCMilliseconds(arg0)
38PASS date.setUTCMilliseconds()
39PASS no recovering from NaN date using date.setUTCMilliseconds(arg0)
40PASS date.setUTCMilliseconds passed all tests
41PASS date.setSeconds(arg0, arg1)
42PASS no recovering from NaN date using date.setSeconds(arg0, 0)
43PASS date.setSeconds(arg0)
44PASS date.setSeconds()
45PASS no recovering from NaN date using date.setSeconds(arg0)
46PASS date.setSeconds passed all tests
47PASS date.setUTCSeconds(arg0, arg1)
48PASS no recovering from NaN date using date.setUTCSeconds(arg0, 0)
49PASS date.setUTCSeconds(arg0)
50PASS date.setUTCSeconds()
51PASS no recovering from NaN date using date.setUTCSeconds(arg0)
52PASS date.setUTCSeconds passed all tests
53PASS date.setMinutes(arg0, arg1, arg2)
54PASS no recovering from NaN date using date.setMinutes(arg0, 0, 0)
55PASS date.setMinutes(arg0, arg1)
56PASS no recovering from NaN date using date.setMinutes(arg0, 0)
57PASS date.setMinutes(arg0)
58PASS date.setMinutes()
59PASS no recovering from NaN date using date.setMinutes(arg0)
60PASS date.setMinutes passed all tests
61PASS date.setUTCMinutes(arg0, arg1, arg2)
62PASS no recovering from NaN date using date.setUTCMinutes(arg0, 0, 0)
63PASS date.setUTCMinutes(arg0, arg1)
64PASS no recovering from NaN date using date.setUTCMinutes(arg0, 0)
65PASS date.setUTCMinutes(arg0)
66PASS date.setUTCMinutes()
67PASS no recovering from NaN date using date.setUTCMinutes(arg0)
68PASS date.setUTCMinutes passed all tests
69PASS date.setHours(arg0, arg1, arg2, arg3)
70PASS no recovering from NaN date using date.setHours(arg0, 0, 0, 0)
71PASS date.setHours(arg0, arg1, arg2)
72PASS no recovering from NaN date using date.setHours(arg0, 0, 0)
73PASS date.setHours(arg0, arg1)
74PASS no recovering from NaN date using date.setHours(arg0, 0)
75PASS date.setHours(arg0)
76PASS date.setHours()
77PASS no recovering from NaN date using date.setHours(arg0)
78PASS date.setHours passed all tests
79PASS date.setUTCHours(arg0, arg1, arg2, arg3)
80PASS no recovering from NaN date using date.setUTCHours(arg0, 0, 0, 0)
81PASS date.setUTCHours(arg0, arg1, arg2)
82PASS no recovering from NaN date using date.setUTCHours(arg0, 0, 0)
83PASS date.setUTCHours(arg0, arg1)
84PASS no recovering from NaN date using date.setUTCHours(arg0, 0)
85PASS date.setUTCHours(arg0)
86PASS date.setUTCHours()
87PASS no recovering from NaN date using date.setUTCHours(arg0)
88PASS date.setUTCHours passed all tests
89PASS date.setDate(arg0)
90PASS date.setDate()
91PASS no recovering from NaN date using date.setDate(arg0)
92PASS date.setDate passed all tests
93PASS date.setUTCDate(arg0)
94PASS date.setUTCDate()
95PASS no recovering from NaN date using date.setUTCDate(arg0)
96PASS date.setUTCDate passed all tests
97PASS date.setMonth(arg0, arg1)
98PASS no recovering from NaN date using date.setMonth(arg0, 0)
99PASS date.setMonth(arg0)
100PASS date.setMonth()
101PASS no recovering from NaN date using date.setMonth(arg0)
102PASS date.setMonth passed all tests
103PASS date.setUTCMonth(arg0, arg1)
104PASS no recovering from NaN date using date.setUTCMonth(arg0, 0)
105PASS date.setUTCMonth(arg0)
106PASS date.setUTCMonth()
107PASS no recovering from NaN date using date.setUTCMonth(arg0)
108PASS date.setUTCMonth passed all tests
109PASS date.setFullYear(arg0, arg1, arg2)
110PASS date.setFullYear(arg0, arg1)
111PASS date.setFullYear(arg0)
112PASS date.setFullYear()
113PASS recover from NaN date using date.setFullYear()
114PASS date.setFullYear passed all tests
115PASS date.setUTCFullYear(arg0, arg1, arg2)
116PASS date.setUTCFullYear(arg0, arg1)
117PASS date.setUTCFullYear(arg0)
118PASS date.setUTCFullYear()
119PASS recover from NaN date using date.setUTCFullYear()
120PASS date.setUTCFullYear passed all tests
121PASS date.setYear(arg0)
122PASS date.setYear()
123PASS date.getYear() is compatible to JavaScript 1.3 and later
124PASS recover from NaN date using date.setUTCFullYear()
125PASS date.setYear passed all tests
126PASS successfullyParsed is true
127
128TEST COMPLETE
129
130