save point durring huge unorganized refactor
This commit is contained in:
71
test/unit/test_stdio_logger.js
Normal file
71
test/unit/test_stdio_logger.js
Normal file
@ -0,0 +1,71 @@
|
||||
|
||||
var es = require('../../src/elasticsearch');
|
||||
var Log = require('../../src/lib/log');
|
||||
var StdioLogger = require('../../src/lib/loggers/stdio');
|
||||
var _ = require('../../src/lib/utils');
|
||||
var expect = require('expect.js');
|
||||
var EventEmitter = require('events').EventEmitter;
|
||||
|
||||
describe('Stdio Logger', function () {
|
||||
var log, logger;
|
||||
|
||||
// pulled from chalk's stripColor function.
|
||||
var hasColorRE = /\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]/;
|
||||
|
||||
function listenerCount(emitter, event) {
|
||||
if (EventEmitter.listenerCount) {
|
||||
return EventEmitter.listenerCount(emitter, event);
|
||||
} else {
|
||||
return emitter.listeners(event).length;
|
||||
}
|
||||
}
|
||||
|
||||
describe('pays attention to the level setting', function () {
|
||||
|
||||
beforeEach(function () {
|
||||
log = new Log();
|
||||
|
||||
log.emit = function (name/*, ...args */) {
|
||||
log._emission = {
|
||||
name: name,
|
||||
args: Array.prototype.slice(arguments, 1)
|
||||
};
|
||||
};
|
||||
|
||||
// new logger in warning mode
|
||||
logger = new StdioLogger(log, {
|
||||
levels: Log.parseLevels('trace')
|
||||
});
|
||||
});
|
||||
|
||||
afterEach(function () {
|
||||
log.close();
|
||||
});
|
||||
|
||||
it('listenes for all the events', function () {
|
||||
listenerCount(log, 'error').should.eql(1);
|
||||
listenerCount(log, 'warning').should.eql(1);
|
||||
listenerCount(log, 'info').should.eql(1);
|
||||
listenerCount(log, 'debug').should.eql(1);
|
||||
listenerCount(log, 'trace').should.eql(1);
|
||||
});
|
||||
|
||||
it('emits events because something is listening', function () {
|
||||
log.error(new Error('error message'));
|
||||
log._emission.name.should.eql('error');
|
||||
|
||||
log.warning('warning');
|
||||
log._emission.name.should.eql('warning');
|
||||
|
||||
log.info('info');
|
||||
log._emission.name.should.eql('info');
|
||||
|
||||
log.debug('debug');
|
||||
log._emission.name.should.eql('debug');
|
||||
|
||||
log.trace('GET', {}, '', '', 200);
|
||||
log._emission.name.should.eql('trace');
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user