OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 // | 4 // |
5 // Process test program to test process communication. | 5 // Process test program to test process communication. |
6 | 6 |
7 library ProcessKillTest; | 7 library ProcessKillTest; |
8 import "dart:io"; | 8 import "dart:io"; |
9 import "process_test_util.dart"; | 9 import "process_test_util.dart"; |
10 | 10 |
11 testKill() { | 11 testKill() { |
12 // Start a process that will hang waiting for input until killed. | 12 // Start a process that will hang waiting for input until killed. |
13 Process.start(getProcessTestFileName(), const ["0", "1", "0", "0"]).then((p) { | 13 Process.start(getProcessTestFileName(), const ["0", "1", "0", "0"]).then((p) { |
14 p.onExit = (exitCode) { | 14 p.exitCode.then((exitCode) { |
15 // Process killed from the side so exit code is not 0. | 15 // Process killed from the side so exit code is not 0. |
16 Expect.isTrue(exitCode != 0); | 16 Expect.isTrue(exitCode != 0); |
17 // Killing a process that is already dead returns false. | 17 // Killing a process that is already dead returns false. |
18 Expect.isFalse(p.kill()); | 18 Expect.isFalse(p.kill()); |
19 }; | 19 }); |
20 Expect.isTrue(p.kill()); | 20 Expect.isTrue(p.kill()); |
21 }); | 21 }); |
22 } | 22 } |
23 | 23 |
24 main() { | 24 main() { |
25 testKill(); | 25 testKill(); |
26 } | 26 } |
OLD | NEW |