// 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:flutter_tools/src/base/file_system.dart'; import 'package:flutter_tools/src/convert.dart'; import 'package:flutter_tools/src/custom_devices/custom_device_config.dart'; void writeCustomDevicesConfigFile( Directory dir, { List<CustomDeviceConfig>? configs, dynamic json }) { dir.createSync(recursive: true); final File file = dir.childFile('.flutter_custom_devices.json'); file.writeAsStringSync(jsonEncode( <String, dynamic>{ 'custom-devices': configs != null ? configs.map<dynamic>((CustomDeviceConfig c) => c.toJson()).toList() : json, }, )); } final CustomDeviceConfig testConfig = CustomDeviceConfig( id: 'testid', label: 'testlabel', sdkNameAndVersion: 'testsdknameandversion', enabled: true, pingCommand: const <String>['testping'], pingSuccessRegex: RegExp('testpingsuccess'), postBuildCommand: const <String>['testpostbuild'], installCommand: const <String>['testinstall'], uninstallCommand: const <String>['testuninstall'], runDebugCommand: const <String>['testrundebug'], forwardPortCommand: const <String>['testforwardport'], forwardPortSuccessRegex: RegExp('testforwardportsuccess') ); const Map<String, dynamic> testConfigJson = <String, dynamic>{ 'id': 'testid', 'label': 'testlabel', 'sdkNameAndVersion': 'testsdknameandversion', 'enabled': true, 'ping': <String>['testping'], 'pingSuccessRegex': 'testpingsuccess', 'postBuild': <String>['testpostbuild'], 'install': <String>['testinstall'], 'uninstall': <String>['testuninstall'], 'runDebug': <String>['testrundebug'], 'forwardPort': <String>['testforwardport'], 'forwardPortSuccessRegex': 'testforwardportsuccess', };