| // Copyright 2018 The Chromium 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_devicelab/framework/running_processes.dart'; |
| import 'common.dart'; |
| |
| void main() { |
| test('Parse PowerShell result', () { |
| const String powershellOutput = r''' |
| |
| ProcessId CreationDate CommandLine |
| --------- ------------ ----------- |
| 6552 3/7/2019 5:00:27 PM "C:\tools\dart-sdk\bin\dart.exe" .\bin\agent.dart ci |
| 6553 3/7/2019 10:00:27 PM "C:\tools\dart-sdk1\bin\dart.exe" .\bin\agent.dart ci |
| 6554 3/7/2019 11:00:27 AM "C:\tools\dart-sdk2\bin\dart.exe" .\bin\agent.dart ci |
| |
| |
| '''; |
| final List<RunningProcessInfo> results = |
| processPowershellOutput(powershellOutput).toList(); |
| expect(results.length, 3); |
| expect( |
| results, |
| equals(<RunningProcessInfo>[ |
| RunningProcessInfo( |
| 6552, |
| DateTime(2019, 7, 3, 17, 0, 27), |
| r'"C:\tools\dart-sdk\bin\dart.exe" .\bin\agent.dart ci', |
| ), |
| RunningProcessInfo( |
| 6553, |
| DateTime(2019, 7, 3, 22, 0, 27), |
| r'"C:\tools\dart-sdk1\bin\dart.exe" .\bin\agent.dart ci', |
| ), |
| RunningProcessInfo( |
| 6554, |
| DateTime(2019, 7, 3, 11, 0, 27), |
| r'"C:\tools\dart-sdk2\bin\dart.exe" .\bin\agent.dart ci', |
| ), |
| ])); |
| }); |
| |
| test('Parse Posix output', () { |
| const String psOutput = r'''STARTED PID COMMAND |
| Sat Mar 9 20:12:47 2019 1 /sbin/launchd |
| Sat Mar 9 20:13:00 2019 49 /usr/sbin/syslogd |
| '''; |
| |
| final List<RunningProcessInfo> results = |
| processPsOutput(psOutput, null).toList(); |
| expect(results.length, 2); |
| expect( |
| results, |
| equals(<RunningProcessInfo>[ |
| RunningProcessInfo( |
| 1, |
| DateTime(2019, 3, 9, 20, 12, 47), |
| '/sbin/launchd', |
| ), |
| RunningProcessInfo( |
| 49, |
| DateTime(2019, 3, 9, 20, 13, 00), |
| '/usr/sbin/syslogd', |
| ), |
| ])); |
| }); |
| } |