blob: fc110829c8ea275409741353e3d263e3bc47b53a [file] [log] [blame]
// Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'dart:async';
import 'dart:convert';
import 'dart:io';
import 'package:expect/expect.dart';
Future<void> main() async {
final process = await Process.start(
Platform.resolvedExecutable,
[
Platform.script.resolve('regress_42092_script.dart').toString(),
],
);
late StreamSubscription sub;
int count = 0;
sub = process.stdout.transform(Utf8Decoder()).listen((event) {
print(event);
if (event.contains('child: Got a SIGINT')) {
++count;
if (count == 3) {
sub.cancel();
}
}
process.kill(ProcessSignal.sigint);
});
await process.exitCode;
}