Added the machine's architecture to macos doctor results. (#65978)
diff --git a/packages/flutter_tools/lib/src/base/os.dart b/packages/flutter_tools/lib/src/base/os.dart
index e57a8bc..bb0ab5a 100644
--- a/packages/flutter_tools/lib/src/base/os.dart
+++ b/packages/flutter_tools/lib/src/base/os.dart
@@ -253,10 +253,11 @@
_processUtils.runSync(<String>['sw_vers', '-productName']),
_processUtils.runSync(<String>['sw_vers', '-productVersion']),
_processUtils.runSync(<String>['sw_vers', '-buildVersion']),
+ _processUtils.runSync(<String>['uname', '-m']),
];
if (results.every((RunResult result) => result.exitCode == 0)) {
_name = '${results[0].stdout.trim()} ${results[1].stdout
- .trim()} ${results[2].stdout.trim()}';
+ .trim()} ${results[2].stdout.trim()} ${results[3].stdout.trim()}';
}
}
_name ??= super.name;
diff --git a/packages/flutter_tools/test/general.shard/base/os_test.dart b/packages/flutter_tools/test/general.shard/base/os_test.dart
index b697736..3e9fca1 100644
--- a/packages/flutter_tools/test/general.shard/base/os_test.dart
+++ b/packages/flutter_tools/test/general.shard/base/os_test.dart
@@ -95,6 +95,29 @@
});
});
+ testWithoutContext('macos name', () async {
+ when(mockProcessManager.runSync(
+ <String>['sw_vers', '-productName'],
+ )).thenReturn(ProcessResult(0, 0, 'product', ''));
+ when(mockProcessManager.runSync(
+ <String>['sw_vers', '-productVersion'],
+ )).thenReturn(ProcessResult(0, 0, 'version', ''));
+ when(mockProcessManager.runSync(
+ <String>['sw_vers', '-buildVersion'],
+ )).thenReturn(ProcessResult(0, 0, 'build', ''));
+ when(mockProcessManager.runSync(
+ <String>['uname', '-m'],
+ )).thenReturn(ProcessResult(0, 0, 'arch', ''));
+ final MockFileSystem fileSystem = MockFileSystem();
+ final OperatingSystemUtils utils = OperatingSystemUtils(
+ fileSystem: fileSystem,
+ logger: BufferLogger.test(),
+ platform: FakePlatform(operatingSystem: 'macos'),
+ processManager: mockProcessManager,
+ );
+ expect(utils.name, 'product version build arch');
+ });
+
testWithoutContext('If unzip fails, include stderr in exception text', () {
const String exceptionMessage = 'Something really bad happened.';
when(mockProcessManager.runSync(