dart-sdk/tests/language_2/compile_time_constant11_test.dart
Morten Krogh-Jespersen 312ce6d002 Migrating another batch of tests to dart 2.
Start:
./language[_strong]/closure_side_effect_test.dart
End:
./language[_strong]/compile_time_constant2_test.dart

Except for tests/language_2/closure_type_test.dart, all other files has been copied automatically by the tool.

R=jcollins@google.com, whesse@google.com

PS: Forgot to run git cl upload command right after the migrate_tool, which I should have done, to make the automatic and manual changes clearer.
Review-Url: https://codereview.chromium.org/3002573002 .
2017-08-16 11:51:42 +02:00

26 lines
744 B
Dart

// Copyright (c) 2012, 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.
// Check that conditional expression can be a compile-time constant.
import "package:expect/expect.dart";
const C1 = true;
const C2 = false;
const nephew = C1 ? C2 ? "Tick" : "Trick" : "Track";
main() {
const a = true ? 5 : 10;
const b = C2 ? "Track" : C1 ? "Trick" : "Tick";
Expect.equals(5, a);
Expect.equals("Trick", nephew);
Expect.equals(nephew, b);
Expect.identical(nephew, b);
var s = const Symbol(nephew);
var msg = "Donald is $nephew's uncle.";
Expect.equals("Donald is Trick's uncle.", msg);
}