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 test checks toString() round-trip decompilation for binary and unary operators.
25
26On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
27
28
29PASS decompiledFunction is 'function () {  x + + y;}'
30PASS decompiledFunction is 'function () {  x + - y;}'
31PASS decompiledFunction is 'function () {  x - + y;}'
32PASS decompiledFunction is 'function () {  x - - y;}'
33PASS decompiledFunction is 'function () {  x * + y;}'
34PASS decompiledFunction is 'function () {  x * - y;}'
35PASS decompiledFunction is 'function () {  x / + y;}'
36PASS decompiledFunction is 'function () {  x / - y;}'
37PASS decompiledFunction is 'function () {  x % + y;}'
38PASS decompiledFunction is 'function () {  x % - y;}'
39PASS decompiledFunction is 'function () {  x++ + y;}'
40PASS decompiledFunction is 'function () {  x++ - y;}'
41PASS decompiledFunction is 'function () {  x++ * y;}'
42PASS decompiledFunction is 'function () {  x++ / y;}'
43PASS decompiledFunction is 'function () {  x-- + y;}'
44PASS decompiledFunction is 'function () {  x-- - y;}'
45PASS decompiledFunction is 'function () {  x-- * y;}'
46PASS decompiledFunction is 'function () {  x-- / y;}'
47PASS decompiledFunction is 'function () {  x + ++y;}'
48PASS decompiledFunction is 'function () {  x - ++y;}'
49PASS decompiledFunction is 'function () {  x * ++y;}'
50PASS decompiledFunction is 'function () {  x / ++y;}'
51PASS decompiledFunction is 'function () {  x + --y;}'
52PASS decompiledFunction is 'function () {  x - --y;}'
53PASS decompiledFunction is 'function () {  x * --y;}'
54PASS decompiledFunction is 'function () {  x / --y;}'
55PASS decompiledFunction is 'function () {  x++ + ++y;}'
56PASS decompiledFunction is 'function () {  x++ - ++y;}'
57PASS decompiledFunction is 'function () {  x++ * ++y;}'
58PASS decompiledFunction is 'function () {  x++ / ++y;}'
59PASS decompiledFunction is 'function () {  x-- + ++y;}'
60PASS decompiledFunction is 'function () {  x-- - ++y;}'
61PASS decompiledFunction is 'function () {  x-- * ++y;}'
62PASS decompiledFunction is 'function () {  x-- / ++y;}'
63PASS decompiledFunction is 'function () {  x++ + --y;}'
64PASS decompiledFunction is 'function () {  x++ - --y;}'
65PASS decompiledFunction is 'function () {  x++ * --y;}'
66PASS decompiledFunction is 'function () {  x++ / --y;}'
67PASS decompiledFunction is 'function () {  x-- + --y;}'
68PASS decompiledFunction is 'function () {  x-- - --y;}'
69PASS decompiledFunction is 'function () {  x-- * --y;}'
70PASS decompiledFunction is 'function () {  x-- / --y;}'
71PASS decompiledFunction is 'function () {  + + x;}'
72PASS decompiledFunction is 'function () {  + - x;}'
73PASS decompiledFunction is 'function () {  - + x;}'
74PASS decompiledFunction is 'function () {  - - x;}'
75PASS decompiledFunction is 'function () {  1;}'
76PASS decompiledFunction is 'function () {  -1;}'
77PASS decompiledFunction is 'function () {  - -1;}'
78PASS decompiledFunction is 'function () {  - - 0;}'
79PASS decompiledFunction is 'function () {  - - NaN;}'
80PASS successfullyParsed is true
81
82TEST COMPLETE
83
84