mirror of
https://github.com/dart-lang/sdk
synced 2024-09-05 16:41:07 +00:00
![Robert Nystrom](/assets/img/avatar_default.png)
Note that cast_test.dart isn't migrated yet due to #39517. First patch set is just copying the tests over. The second patchset has the actual meaningful changes. Change-Id: I89233f20187b4305a776f865cde09a984423fa4f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125920 Commit-Queue: Bob Nystrom <rnystrom@google.com> Reviewed-by: Lasse R.H. Nielsen <lrn@google.com> Auto-Submit: Bob Nystrom <rnystrom@google.com>
47 lines
1.4 KiB
Dart
47 lines
1.4 KiB
Dart
// Copyright (c) 2017, 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.
|
|
|
|
import "package:expect/expect.dart";
|
|
|
|
main() {
|
|
void test(bool b1, bool b2) {
|
|
var and1 = b1 && b2;
|
|
var and2 = b1 & b2;
|
|
var and3 = b1 ? b2 ? true : false : false;
|
|
var or1 = b1 || b2;
|
|
var or2 = b1 | b2;
|
|
var or3 = b1 ? true : b2 ? true : false;
|
|
var xor1 = b1 != b2;
|
|
var xor2 = b1 ^ b2;
|
|
var xor3 = b1 ? b2 ? false : true : b2 ? true : false;
|
|
var nb1 = !b1;
|
|
var nb2 = !b2;
|
|
Expect.equals(and3, and1);
|
|
Expect.equals(and3, and2);
|
|
Expect.equals(or3, or1);
|
|
Expect.equals(or3, or2);
|
|
Expect.equals(xor3, xor1);
|
|
Expect.equals(xor3, xor2);
|
|
Expect.notEquals(nb1, b1);
|
|
Expect.notEquals(nb2, b2);
|
|
}
|
|
|
|
test(true, false);
|
|
test(true, true);
|
|
test(false, true);
|
|
test(false, false);
|
|
|
|
Expect.isTrue(true || (throw "unreachable"));
|
|
Expect.throws(() => false || (throw "unreachable"));
|
|
|
|
Expect.isFalse(false && (throw "unreachable"));
|
|
Expect.throws(() => true && (throw "unreachable"));
|
|
|
|
Expect.throws(() => true | (throw "unreachable"));
|
|
Expect.throws(() => false | (throw "unreachable"));
|
|
|
|
Expect.throws(() => true & (throw "unreachable"));
|
|
Expect.throws(() => false & (throw "unreachable"));
|
|
}
|