This commit is contained in:
lollipopkit
2023-08-30 13:44:19 +08:00
parent 1cdcff120d
commit 685faa0627
3 changed files with 16 additions and 2 deletions

View File

@@ -115,7 +115,7 @@ class PsResult {
}); });
factory PsResult.parse(String raw, {ProcSortMode sort = ProcSortMode.cpu}) { factory PsResult.parse(String raw, {ProcSortMode sort = ProcSortMode.cpu}) {
final lines = raw.split('\n'); final lines = raw.split('\n').map((e) => e.trim()).toList();
if (lines.isEmpty) return PsResult(procs: [], error: null); if (lines.isEmpty) return PsResult(procs: [], error: null);
final header = lines[0]; final header = lines[0];
@@ -145,6 +145,7 @@ class PsResult {
} catch (e, trace) { } catch (e, trace) {
err += '$line: $e\n'; err += '$line: $e\n';
_logger.warning(trace); _logger.warning(trace);
rethrow;
} }
} }

13
test/proc_test.dart Normal file
View File

@@ -0,0 +1,13 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:toolbox/data/model/server/proc.dart';
void main() {
test('parse process', () {
const raw = '''
PID USER VSZ STAT COMMAND
1 root 1276 S /sbin/procd
''';
final psResult = PsResult.parse(raw);
expect(psResult.procs.length, 1);
});
}