// Copyright 2014 The Flutter Authors. 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.8 import 'package:flutter_tools/src/runner/flutter_command.dart'; typedef CommandFunction = Future<FlutterCommandResult> Function(); class DummyFlutterCommand extends FlutterCommand { DummyFlutterCommand({ this.shouldUpdateCache = false, this.noUsagePath = false, this.name = 'dummy', this.commandFunction, this.packagesPath, }); final bool noUsagePath; final CommandFunction commandFunction; @override final bool shouldUpdateCache; @override String get description => 'does nothing'; @override Future<String> get usagePath => noUsagePath ? null : super.usagePath; @override final String name; @override Future<FlutterCommandResult> runCommand() async { return commandFunction == null ? FlutterCommandResult.fail() : await commandFunction(); } @override final String packagesPath; }