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
24Tests that we do ToString conversions correctly when String.prototype.valueOf is initially fine but then gets clobbered, and was a dictionary all along.
25
26On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
27
28
29PASS "" + foo("hello") is "hello"
30PASS "" + foo("hello") is "hello"
31PASS "" + foo("hello") is "hello"
32PASS "" + foo("hello") is "hello"
33PASS "" + foo("hello") is "hello"
34PASS "" + foo("hello") is "hello"
35PASS "" + foo("hello") is "hello"
36PASS "" + foo("hello") is "hello"
37PASS "" + foo("hello") is "hello"
38PASS "" + foo("hello") is "hello"
39PASS "" + foo("hello") is "hello"
40PASS "" + foo("hello") is "hello"
41PASS "" + foo("hello") is "hello"
42PASS "" + foo("hello") is "hello"
43PASS "" + foo("hello") is "hello"
44PASS "" + foo("hello") is "hello"
45PASS "" + foo("hello") is "hello"
46PASS "" + foo("hello") is "hello"
47PASS "" + foo("hello") is "hello"
48PASS "" + foo("hello") is "hello"
49PASS "" + foo("hello") is "hello"
50PASS "" + foo("hello") is "hello"
51PASS "" + foo("hello") is "hello"
52PASS "" + foo("hello") is "hello"
53PASS "" + foo("hello") is "hello"
54PASS "" + foo("hello") is "hello"
55PASS "" + foo("hello") is "hello"
56PASS "" + foo("hello") is "hello"
57PASS "" + foo("hello") is "hello"
58PASS "" + foo("hello") is "hello"
59PASS "" + foo("hello") is "hello"
60PASS "" + foo("hello") is "hello"
61PASS "" + foo("hello") is "hello"
62PASS "" + foo("hello") is "hello"
63PASS "" + foo("hello") is "hello"
64PASS "" + foo("hello") is "hello"
65PASS "" + foo("hello") is "hello"
66PASS "" + foo("hello") is "hello"
67PASS "" + foo("hello") is "hello"
68PASS "" + foo("hello") is "hello"
69PASS "" + foo("hello") is "hello"
70PASS "" + foo("hello") is "hello"
71PASS "" + foo("hello") is "hello"
72PASS "" + foo("hello") is "hello"
73PASS "" + foo("hello") is "hello"
74PASS "" + foo("hello") is "hello"
75PASS "" + foo("hello") is "hello"
76PASS "" + foo("hello") is "hello"
77PASS "" + foo("hello") is "hello"
78PASS "" + foo("hello") is "hello"
79PASS "" + foo("hello") is "hello"
80PASS "" + foo("hello") is "hello"
81PASS "" + foo("hello") is "hello"
82PASS "" + foo("hello") is "hello"
83PASS "" + foo("hello") is "hello"
84PASS "" + foo("hello") is "hello"
85PASS "" + foo("hello") is "hello"
86PASS "" + foo("hello") is "hello"
87PASS "" + foo("hello") is "hello"
88PASS "" + foo("hello") is "hello"
89PASS "" + foo("hello") is "hello"
90PASS "" + foo("hello") is "hello"
91PASS "" + foo("hello") is "hello"
92PASS "" + foo("hello") is "hello"
93PASS "" + foo("hello") is "hello"
94PASS "" + foo("hello") is "hello"
95PASS "" + foo("hello") is "hello"
96PASS "" + foo("hello") is "hello"
97PASS "" + foo("hello") is "hello"
98PASS "" + foo("hello") is "hello"
99PASS "" + foo("hello") is "hello"
100PASS "" + foo("hello") is "hello"
101PASS "" + foo("hello") is "hello"
102PASS "" + foo("hello") is "hello"
103PASS "" + foo("hello") is "hello"
104PASS "" + foo("hello") is "hello"
105PASS "" + foo("hello") is "hello"
106PASS "" + foo("hello") is "hello"
107PASS "" + foo("hello") is "hello"
108PASS "" + foo("hello") is "hello"
109PASS "" + foo("hello") is "hello"
110PASS "" + foo("hello") is "hello"
111PASS "" + foo("hello") is "hello"
112PASS "" + foo("hello") is "hello"
113PASS "" + foo("hello") is "hello"
114PASS "" + foo("hello") is "hello"
115PASS "" + foo("hello") is "hello"
116PASS "" + foo("hello") is "hello"
117PASS "" + foo("hello") is "hello"
118PASS "" + foo("hello") is "hello"
119PASS "" + foo("hello") is "hello"
120PASS "" + foo("hello") is "hello"
121PASS "" + foo("hello") is "hello"
122PASS "" + foo("hello") is "hello"
123PASS "" + foo("hello") is "hello"
124PASS "" + foo("hello") is "hello"
125PASS "" + foo("hello") is "hello"
126PASS "" + foo("hello") is "hello"
127PASS "" + foo("hello") is "hello"
128PASS "" + foo("hello") is "hello"
129PASS "" + foo("hello") is "42"
130PASS "" + foo("hello") is "42"
131PASS "" + foo("hello") is "42"
132PASS "" + foo("hello") is "42"
133PASS "" + foo("hello") is "42"
134PASS "" + foo("hello") is "42"
135PASS "" + foo("hello") is "42"
136PASS "" + foo("hello") is "42"
137PASS "" + foo("hello") is "42"
138PASS "" + foo("hello") is "42"
139PASS "" + foo("hello") is "42"
140PASS "" + foo("hello") is "42"
141PASS "" + foo("hello") is "42"
142PASS "" + foo("hello") is "42"
143PASS "" + foo("hello") is "42"
144PASS "" + foo("hello") is "42"
145PASS "" + foo("hello") is "42"
146PASS "" + foo("hello") is "42"
147PASS "" + foo("hello") is "42"
148PASS "" + foo("hello") is "42"
149PASS "" + foo("hello") is "42"
150PASS "" + foo("hello") is "42"
151PASS "" + foo("hello") is "42"
152PASS "" + foo("hello") is "42"
153PASS "" + foo("hello") is "42"
154PASS "" + foo("hello") is "42"
155PASS "" + foo("hello") is "42"
156PASS "" + foo("hello") is "42"
157PASS "" + foo("hello") is "42"
158PASS "" + foo("hello") is "42"
159PASS "" + foo("hello") is "42"
160PASS "" + foo("hello") is "42"
161PASS "" + foo("hello") is "42"
162PASS "" + foo("hello") is "42"
163PASS "" + foo("hello") is "42"
164PASS "" + foo("hello") is "42"
165PASS "" + foo("hello") is "42"
166PASS "" + foo("hello") is "42"
167PASS "" + foo("hello") is "42"
168PASS "" + foo("hello") is "42"
169PASS "" + foo("hello") is "42"
170PASS "" + foo("hello") is "42"
171PASS "" + foo("hello") is "42"
172PASS "" + foo("hello") is "42"
173PASS "" + foo("hello") is "42"
174PASS "" + foo("hello") is "42"
175PASS "" + foo("hello") is "42"
176PASS "" + foo("hello") is "42"
177PASS "" + foo("hello") is "42"
178PASS "" + foo("hello") is "42"
179PASS successfullyParsed is true
180
181TEST COMPLETE
182
183