Run server-test and websocket-test first. Show stderr upon abnormal rippled exit

This commit is contained in:
Nicholas Dudfield
2014-01-05 13:09:42 +07:00
parent 528cf56f80
commit ff12d9adaa
4 changed files with 19 additions and 4 deletions

View File

@@ -22,7 +22,7 @@
},
"scripts": {
"test": "mocha test/*-test.{js,coffee}"
"test": "mocha"
},
"repository": {

View File

@@ -3,3 +3,6 @@
--ui tdd
--timeout 10000
--slow 600
test/server-test.js
test/websocket-test.js
test/*-test.{js,coffee}

View File

@@ -1,4 +1,4 @@
#!/bin/bash
# flags set in mocha.opts
mocha test/*-test.{js,coffee}
mocha

View File

@@ -91,7 +91,7 @@ Server.prototype._serverSpawnSync = function() {
var options = {
cwd: this.serverPath(),
env: process.env,
stdio: this.quiet ? 'ignore' : 'inherit'
stdio: this.quiet ? 'pipe': 'inherit'
};
// Spawn in standalone mode for now.
@@ -104,12 +104,24 @@ Server.prototype._serverSpawnSync = function() {
args.join(" "),
this.configPath());
var stderr = [];
self.child.stderr.on('data', function(buf) { stderr.push(buf); });
// By default, just log exits.
this.child.on('exit', function(code, signal) {
if (!self.quiet) console.log("server: spawn: server exited code=%s: signal=%s", code, signal);
self.emit('exited');
// Dump server logs on an abnormal exit
if (self.quiet && (!self.stopping)) {
process.stderr.write("rippled stderr:\n");
for (var i = 0; i < stderr.length; i++) {
process.stderr.write(stderr[i]);
};
};
// If could not exec: code=127, signal=null
// If regular exit: code=0, signal=null
// Fail the test if the server has not called "stop".