| // Copyright (c) 2024, 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 'dart:async'; |
| |
| import 'package:expect/expect.dart'; |
| import 'package:reload_test/reload_test_utils.dart'; |
| |
| var x = 'Hello World'; |
| |
| void main() { |
| Expect.equals('Hello World', x); |
| Expect.equals(0, hotRestartGeneration); |
| |
| scheduleMicrotask(() { |
| Expect.equals(0, hotRestartGeneration); |
| }); |
| Future<Null>.microtask(() { |
| throw x; |
| }).catchError((e, stackTrace) { |
| Expect.equals("Hello World", e); |
| Expect.equals(0, hotRestartGeneration); |
| }).then((_) { |
| Expect.equals(0, hotRestartGeneration); |
| }); |
| Future.delayed(Duration(seconds: 5), () { |
| throw Exception('Future from main.0.dart before hot restart. ' |
| 'This should never run.'); |
| }); |
| |
| hotRestart(); |
| } |