我最终写了一个名为toggle的工具:
require('tty').setRawMode(true);var stdin = process.openStdin();exports.toggle = function(fireThis){ if (process.argv.indexOf("debug")!=-1) { console.log("debug flag found, press any key to start or rerun. Press 'ctrl-c' to cancel out!"); stdin.on('keypress', function (chunk, key) { if (key.name == 'c' && key.ctrl == true) { process.exit(); } fireThis(); }); } else { console.log("Running, press any key to rerun or ctrl-c to exit."); fireThis(); stdin.on('keypress', function (chunk, key) { if (key.name == 'c' && key.ctrl == true) { process.exit(); } fireThis(); }); }}
您可以将其放入单元测试中,例如:
var toggle = require('./toggle');toggle.toggle(function(){ var vows = require('vows'), assert = require('assert'); vows.describe('Redis Mass Data Storage').addBatch({....
然后运行测试,例如:node –debug myfile.js debug。如果运行调试切换,则将一直等到ctrl-c以外的任何内容。Ctrl-
c退出。您也可以重新运行,这很好。
w0000t。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)