| // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| /// @assertion Operator precedence is given implicitly by the grammar. |
| /// @description Checks that operator precedence given implicitly by the grammar |
| /// holds true (multiplicative operators have higher precedence than additive). |
| /// @author vasya |
| |
| import "../../../Utils/expect.dart"; |
| |
| main() { |
| Expect.equals( (8 - 3) - 2, 8 - 3 - 2); |
| Expect.equals( 5 + (3 * 2), 5 + 3 * 2); |
| Expect.equals(((13 + (77 / 5.0)) - (16 * 17)) + (1 * 1), |
| 13 + 77 / 5.0 - 16 * 17 + 1 * 1); |
| Expect.equals(((((1 + 2) + ((3 * 4) * 5)) + 6) + 7), |
| 1 + 2 + 3 * 4 * 5 + 6 + 7); |
| Expect.equals(1 + ((2 * 2) * 4), 1 + 2 * 2 * 4); |
| Expect.equals(((1 + 2) * 2) * 4, (1 + 2) * 2 * 4); |
| Expect.equals((72 / 12) / 3, 72 / 12 / 3); |
| Expect.equals(104 / 27, (31 + 73) / 27); |
| Expect.equals(-(2) + 4, (1-3) + 4); |
| Expect.equals(12 * 123, (17 - 5) * 123); |
| Expect.equals(12 / -(2), 4 * 3 / -2); |
| } |