| // 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:args/command_runner.dart'; |
| import 'package:flutter_tools/src/base/file_system.dart'; |
| import 'package:flutter_tools/src/base/logger.dart'; |
| import 'package:flutter_tools/src/commands/validate_project.dart'; |
| import 'package:flutter_tools/src/globals.dart' as globals; |
| import 'package:flutter_tools/src/project_validator.dart'; |
| |
| import '../src/context.dart'; |
| import '../src/test_flutter_command_runner.dart'; |
| |
| void main() { |
| FileSystem fileSystem; |
| |
| group('analyze project command', () { |
| |
| setUp(() { |
| fileSystem = globals.localFileSystem; |
| }); |
| |
| testUsingContext('General Info Project Validator', () async { |
| final BufferLogger loggerTest = BufferLogger.test(); |
| final ValidateProjectCommand command = ValidateProjectCommand( |
| fileSystem: fileSystem, |
| logger: loggerTest, |
| allProjectValidators: <ProjectValidator>[GeneralInfoProjectValidator()] |
| ); |
| final CommandRunner<void> runner = createTestCommandRunner(command); |
| |
| await runner.run(<String>['validate-project', '../../dev/integration_tests/flutter_gallery']); |
| |
| const String expected = '\n' |
| '┌────────────────────────────────────────────────────────────────────────────┐\n' |
| '│ General Info │\n' |
| '│ [✓] App Name: flutter_gallery │\n' |
| '│ [✓] Supported Platforms: android, ios, web, macos, linux, windows, fuchsia │\n' |
| '│ [✓] Is Flutter Package: yes │\n' |
| '│ [✓] Uses Material Design: yes │\n' |
| '│ [✓] Is Plugin: no │\n' |
| '└────────────────────────────────────────────────────────────────────────────┘\n'; |
| |
| expect(loggerTest.statusText, contains(expected)); |
| }); |
| }); |
| } |