// 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. // VMOptions=--optimization-counter-threshold=10 import "package:expect/expect.dart"; main() { for (int i = 0; i < 20; i++) { Expect.isFalse(test1(5)); Expect.isTrue(test1(3)); Expect.isTrue(test2(5)); Expect.isFalse(test2(3)); Expect.isTrue(test2r(5)); Expect.isFalse(test2r(3)); Expect.isTrue(test3()); Expect.equals(2, test4(5)); Expect.equals(1, test4(3)); Expect.equals(1, test5(5)); Expect.equals(2, test5(3)); Expect.equals(1, test6()); Expect.isFalse(test7()); Expect.equals(2, test8()); Expect.isFalse(test9(2)); Expect.isFalse(test9r(2)); Expect.isTrue(test9(0)); Expect.isTrue(test9r(0)); Expect.isFalse(test10(0)); Expect.isFalse(test10r(0)); Expect.isTrue(test10(2)); Expect.isTrue(test10r(2)); test11(i); } } test1(a) { return identical(a, 3); } test2(a) { return !identical(a, 3); } test2r(a) { return !identical(3, a); } test3() { return identical(get5(), 5); } test4(a) { if (identical(a, 3)) { return 1; } else { return 2; } } test5(a) { if (!identical(a, 3)) { return 1; } else { return 2; } } test6() { if (identical(get5(), 5)) { return 1; } else { return 2; } } get5() { return 5; } test7() { return null != null; } test8() { if (null != null) { return 1; } else { return 2; } } test9(a) { return identical(a, 0); } test9r(a) { return identical(0, a); } test10(a) { return !identical(a, 0); } test10r(a) { return !identical(0, a); } test11(a) { if (identical(a, 0)) { Expect.isTrue(identical(0, a)); Expect.isFalse(!identical(a, 0)); Expect.isFalse(!identical(0, a)); } else { Expect.isFalse(identical(0, a)); Expect.isTrue(!identical(a, 0)); Expect.isTrue(!identical(0, a)); } }