dart-sdk/tests/dart2js_2/constant_javascript_semantics_test5.dart
Joshua Litt 05ca544f15 [dart2js] Move tests/compiler/dart2js_extra to tests/dart2js_2.
Change-Id: Iaa0ca2b4f2d1b15f79ddca37834d3ed2497bc068
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149242
Commit-Queue: Joshua Litt <joshualitt@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-06-03 15:15:30 +00:00

39 lines
861 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.
// @dart = 2.7
import "package:expect/expect.dart";
// Make sure we can assert(const Foo() != null) in const initializers.
class Color {
const Color(this.value);
final int value;
}
class ColorHaver {
const ColorHaver({this.color = const Color(0xFF000000)})
: assert(color != null);
final Color color;
}
const c = const ColorHaver(color: const Color(0xFF00FF00));
enum Enum {
a,
b,
}
class EnumHaver {
const EnumHaver({this.myEnum: Enum.a}) : assert(myEnum != null);
final Enum myEnum;
}
const e = const EnumHaver(myEnum: Enum.b);
main() {
Expect.equals(c.value, 0xFF00FF00);
Expect.equals(e.myEnum, Enum.b);
}