Skip to content

Commit b1738ad

Browse files
authored
Alternative fix for #1501 (#1539)
* [wip fix] Assume message is the empty string when level-helper methods are invoked with no arguments. * [fix] Add test for #1501.
1 parent 9d3da20 commit b1738ad

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

lib/winston/create-logger.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,12 @@ class DerivedLogger extends Logger {
5757
return this;
5858
}
5959

60+
// When provided nothing assume the empty string
61+
if (args.length === 0) {
62+
this.log(level, '');
63+
return this;
64+
}
65+
6066
// Otherwise build argument list which could potentially conform to
6167
// either:
6268
// . v3 API: log(obj)

test/logger.test.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,25 @@ describe('Logger (levels)', function () {
281281
done();
282282
});
283283

284+
it('.<level>()', function (done) {
285+
var logger = helpers.createLogger(function (info) {
286+
assume(info).is.an('object');
287+
assume(info.level).equals('info');
288+
assume(info.message).is.a('string');
289+
assume(info[MESSAGE]).is.a('string');
290+
assume(info.message).equals('');
291+
assume(info[MESSAGE]).equals(JSON.stringify({
292+
level: 'info',
293+
message: ''
294+
}));
295+
296+
done();
297+
});
298+
299+
logger.info();
300+
logger.info('');
301+
});
302+
284303
it('default levels', function (done) {
285304
var logger = winston.createLogger();
286305
var expected = { message: 'foo', level: 'debug' };

0 commit comments

Comments
 (0)