| Index: pkg/analysis_server/test/services/correction/fix_test.dart
|
| diff --git a/pkg/analysis_server/test/services/correction/fix_test.dart b/pkg/analysis_server/test/services/correction/fix_test.dart
|
| index d6bd2db659c3a682a8e929ed8b544a6d3f96e969..57ff0c67387c3ee180f65cba8bfe05806d2a09a0 100644
|
| --- a/pkg/analysis_server/test/services/correction/fix_test.dart
|
| +++ b/pkg/analysis_server/test/services/correction/fix_test.dart
|
| @@ -427,6 +427,102 @@ class A {
|
| ''');
|
| }
|
|
|
| + test_addMissingRequiredArg_cons_single() async {
|
| + _addMetaPackageSource();
|
| +
|
| + await resolveTestUnit('''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +class A {
|
| + A({@required int a}) {}
|
| +}
|
| +main() {
|
| + A a = new A();
|
| +}
|
| +''');
|
| + await assertHasFix(
|
| + DartFixKind.ADD_MISSING_REQUIRED_ARGUMENT,
|
| + '''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +class A {
|
| + A({@required int a}) {}
|
| +}
|
| +main() {
|
| + A a = new A(a: null);
|
| +}
|
| +''');
|
| + }
|
| +
|
| + test_addMissingRequiredArg_multiple() async {
|
| + _addMetaPackageSource();
|
| +
|
| + await resolveTestUnit('''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +test({@required int a, @required int bcd}) {}
|
| +main() {
|
| + test(a: 3);
|
| +}
|
| +''');
|
| + await assertHasFix(
|
| + DartFixKind.ADD_MISSING_REQUIRED_ARGUMENT,
|
| + '''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +test({@required int a, @required int bcd}) {}
|
| +main() {
|
| + test(a: 3, bcd: null);
|
| +}
|
| +''');
|
| + }
|
| +
|
| + test_addMissingRequiredArg_single() async {
|
| + _addMetaPackageSource();
|
| +
|
| + await resolveTestUnit('''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +test({@required int abc}) {}
|
| +main() {
|
| + test();
|
| +}
|
| +''');
|
| + await assertHasFix(
|
| + DartFixKind.ADD_MISSING_REQUIRED_ARGUMENT,
|
| + '''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +test({@required int abc}) {}
|
| +main() {
|
| + test(abc: null);
|
| +}
|
| +''');
|
| + }
|
| +
|
| + test_addMissingRequiredArg_single_normal() async {
|
| + _addMetaPackageSource();
|
| +
|
| + await resolveTestUnit('''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +test(String x, {@required int abc}) {}
|
| +main() {
|
| + test("foo");
|
| +}
|
| +''');
|
| + await assertHasFix(
|
| + DartFixKind.ADD_MISSING_REQUIRED_ARGUMENT,
|
| + '''
|
| +import 'package:meta/meta.dart';
|
| +
|
| +test(String x, {@required int abc}) {}
|
| +main() {
|
| + test("foo", abc: null);
|
| +}
|
| +''');
|
| + }
|
| +
|
| test_addSync_asyncFor() async {
|
| await resolveTestUnit('''
|
| import 'dart:async';
|
| @@ -5336,6 +5432,19 @@ main() {
|
| }
|
| ''');
|
| }
|
| +
|
| + void _addMetaPackageSource() {
|
| + addPackageSource('meta', 'meta.dart', r'''
|
| +library meta;
|
| +
|
| +const Required required = const Required();
|
| +
|
| +class Required {
|
| + final String reason;
|
| + const Required([this.reason]);
|
| +}
|
| +''');
|
| + }
|
| }
|
|
|
| @reflectiveTest
|
|
|