[await sync-async flag] Add test of sync async execution (#16795)

This commit is contained in:
Mikkel Nygaard Ravn 2018-05-28 17:35:51 +02:00 committed by GitHub
parent 3ced55a7dc
commit 00970710e0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -0,0 +1,26 @@
// Copyright 2018 The Chromium Authors. 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:test/test.dart';
/// Verifies Dart semantics governed by flags set by Flutter tooling.
void main() {
group('Async', () {
String greeting = 'hello';
Future<void> changeGreeting() async {
greeting += ' 1';
await new Future<void>.value(null);
greeting += ' 2';
}
test('execution of async method starts synchronously', () async {
expect(greeting, 'hello');
final Future<void> future = changeGreeting();
expect(greeting, 'hello 1');
await future;
expect(greeting, 'hello 1 2');
});
});
}