* Helper: run worker commands on a shell.
(flow, callback)
| 67 | * Helper: run worker commands on a shell. |
| 68 | */ |
| 69 | function mockShell(flow, callback) { |
| 70 | var messages = [], success = true, i = 0; |
| 71 | |
| 72 | var stdin = new EventEmitter(), |
| 73 | stdout = new EventEmitter(); |
| 74 | |
| 75 | stdout.write = function (data) { |
| 76 | messages.push(JSON.parse(data.substring(0, data.length - 1))); |
| 77 | }; |
| 78 | |
| 79 | var p = new processor.processor(stdin, stdout); |
| 80 | for (i in flow) (function (message) { |
| 81 | setTimeout(function () { |
| 82 | stdin.emit('data', JSON.stringify(message) + '\u0000'); |
| 83 | }, i * 100); |
| 84 | })(flow[i]); |
| 85 | |
| 86 | setTimeout(track(function () { |
| 87 | callback(messages, success); |
| 88 | stdin.emit('end'); |
| 89 | }), i * 100 + 1000); |
| 90 | } |
| 91 | |
| 92 | /** |
| 93 | * Test termkit handshake. |
no test coverage detected