| // 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. |
| |
| import 'package:file/file.dart'; |
| import 'package:flutter_tools/src/base/file_system.dart'; |
| import 'package:vm_service/vm_service.dart'; |
| import 'package:vm_service/vm_service_io.dart'; |
| |
| import '../src/common.dart'; |
| import 'test_data/basic_project.dart'; |
| import 'test_driver.dart'; |
| import 'test_utils.dart'; |
| |
| void main() { |
| Directory tempDir; |
| FlutterRunTestDriver flutter; |
| |
| test('Flutter Tool VMService methods can be called', () async { |
| tempDir = createResolvedTempDirectorySync('vmservice_integration_test.'); |
| |
| final BasicProject _project = BasicProject(); |
| await _project.setUpIn(tempDir); |
| |
| flutter = FlutterRunTestDriver(tempDir); |
| await flutter.run(withDebugger: true); |
| final int port = flutter.vmServicePort; |
| final VmService vmService = await vmServiceConnectUri('ws://localhost:$port/ws'); |
| |
| final Response versionResponse = await vmService.callMethod('s0.flutterVersion'); |
| expect(versionResponse.type, 'Success'); |
| expect(versionResponse.json, containsPair('frameworkRevisionShort', isNotNull)); |
| expect(versionResponse.json, containsPair('engineRevisionShort', isNotNull)); |
| |
| final Response memoryInfoResponse = await vmService.callMethod('s0.flutterMemoryInfo'); |
| expect(memoryInfoResponse.type, 'Success'); |
| }); |
| |
| tearDown(() { |
| tryToDelete(tempDir); |
| flutter?.stop(); |
| }); |
| } |