Files
sdk/tests/dartdevc_2/hot_restart_lazy_test.dart
T
Joshua Litt d14ab0779a [dartdevc] Migrate tests/compiler/dartdevc_native to tests/dartdevc_2.
Change-Id: I9c486f29f3bcf8a6ecf481eb25ea61d0468049b2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150667
Commit-Queue: Joshua Litt <joshualitt@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
2020-06-17 18:14:00 +00:00

39 lines
907 B
Dart

// Copyright (c) 2020, 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.
// Tests that lazily-loaded fields are properly reset after hot restarts.
import 'package:expect/expect.dart';
import 'dart:_runtime' as dart;
double lazy = 3.14;
class Lazies {
static String s = "default";
}
main() {
Expect.equals(Lazies.s, "default");
Lazies.s = "set";
Expect.equals(Lazies.s, "set");
Expect.equals(lazy, 3.14);
lazy = 2.72;
Expect.equals(lazy, 2.72);
dart.hotRestart();
Expect.equals(Lazies.s, "default");
Lazies.s = "set";
Expect.equals(Lazies.s, "set");
Expect.equals(lazy, 3.14);
lazy = 2.72;
Expect.equals(lazy, 2.72);
dart.hotRestart();
dart.hotRestart();
Expect.equals(Lazies.s, "default");
Expect.equals(lazy, 3.14);
}