@unic/estatico-utils [WIP]
Utilities for logging etc.
Installation
$ npm install --save-dev @unic/estatico-utils
Usage
Logger
const parseArgs = require('minimist');
const { Logger } = require('@unic/estatico-utils');
const env = parseArgs(process.argv.slice(2));
const logger = new Logger('estatico-bla');
logger.info('Something is happening');
logger.debug('Something is happening', );
logger.error(new Error('Something went wrong'), env.dev);
Plugin
const { Plugin } = require('@unic/estatico-utils');
module.exports = (options, env = {}) => new Plugin({
defaults,
schema,
options,
task,
env,
});
Test
compareFiles(t, fileGlob)
Compares files resolved from fileGlob
with current files in results/
directory.
const test = require('ava');
const utils = require('@unic/estatico-utils').test;
test.cb('default', (t) => {
task(defaults)().on('end', () => utils.compareFiles(t, path.join(__dirname, 'expected/default/*')));
});
stripLogs(sinonSpy)
Join everything sinon.spy
captured into string, strip ANSI characters and line-breaks.
const test = require('ava');
const sinon = require('sinon');
const utils = require('@unic/estatico-utils').test;
test.cb('error', (t) => {
const spy = sinon.spy(console, 'log');
task(defaults)().on('end', () => {
spy.restore();
const log = utils.stripLogs(spy);
t.regex(log, /test\/fixtures\/error.hbs Parse error on line 2/);
t.end();
});
});
License
Apache 2.0.