added unit testing, and started implementing unit tests...phew
This commit is contained in:
52
node_modules/logform/format.js
generated
vendored
Normal file
52
node_modules/logform/format.js
generated
vendored
Normal file
@ -0,0 +1,52 @@
|
||||
'use strict';
|
||||
|
||||
/*
|
||||
* Displays a helpful message and the source of
|
||||
* the format when it is invalid.
|
||||
*/
|
||||
class InvalidFormatError extends Error {
|
||||
constructor(formatFn) {
|
||||
super(`Format functions must be synchronous taking a two arguments: (info, opts)
|
||||
Found: ${formatFn.toString().split('\n')[0]}\n`);
|
||||
|
||||
Error.captureStackTrace(this, InvalidFormatError);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* function format (formatFn)
|
||||
* Returns a create function for the `formatFn`.
|
||||
*/
|
||||
module.exports = formatFn => {
|
||||
if (formatFn.length > 2) {
|
||||
throw new InvalidFormatError(formatFn);
|
||||
}
|
||||
|
||||
/*
|
||||
* function Format (options)
|
||||
* Base prototype which calls a `_format`
|
||||
* function and pushes the result.
|
||||
*/
|
||||
function Format(options = {}) {
|
||||
this.options = options;
|
||||
}
|
||||
|
||||
Format.prototype.transform = formatFn;
|
||||
|
||||
//
|
||||
// Create a function which returns new instances of
|
||||
// FormatWrap for simple syntax like:
|
||||
//
|
||||
// require('winston').formats.json();
|
||||
//
|
||||
function createFormatWrap(opts) {
|
||||
return new Format(opts);
|
||||
}
|
||||
|
||||
//
|
||||
// Expose the FormatWrap through the create function
|
||||
// for testability.
|
||||
//
|
||||
createFormatWrap.Format = Format;
|
||||
return createFormatWrap;
|
||||
};
|
Reference in New Issue
Block a user