smartlog-destination-local/test/test.ts

71 lines
2.3 KiB
TypeScript
Raw Normal View History

2018-03-01 00:06:12 +00:00
import { tap, expect } from 'tapbundle';
import * as smartdelay from 'smartdelay';
2015-09-26 18:46:16 +00:00
2018-03-01 00:06:12 +00:00
import * as qenv from 'qenv';
let testQenv = new qenv.Qenv(process.cwd(), process.cwd() + '/.nogit');
2017-01-21 17:40:40 +00:00
import smartlogDesinationLocal = require('../ts/index');
import { ILogContext } from 'smartlog-interfaces';
let testLogContext: ILogContext = {
company: 'Lossless GmbH',
companyunit: 'Lossless.Cloud',
containerName: 'gitlabci',
environment: 'staging',
runtime: 'node',
zone: 'shipzone'
}
let testLocalInstance: smartlogDesinationLocal.DestinationLocal;
tap.test('should create a valid instance of DestinationLocal', async () => {
testLocalInstance = new smartlogDesinationLocal.DestinationLocal()
expect(testLocalInstance).to.be.instanceof(smartlogDesinationLocal.DestinationLocal);
})
2017-04-21 21:38:51 +00:00
tap.test('.log(message) should print a blue Dir message', async () => {
testLocalInstance.handleLog({
logLevel: 'info',
logContext: testLogContext,
message: 'this is a info log message'
});
2018-03-01 00:06:12 +00:00
});
2017-04-21 21:38:51 +00:00
tap.test('.figlet should print nice fonts to console in yellow', async () => {
testLocalInstance.figlet('Async!', { font: 'Star Wars', color: 'orange' });
2018-03-01 00:06:12 +00:00
});
2017-04-21 21:38:51 +00:00
tap.test('.figletSync should print nice fonts to console in yellow', async () => {
testLocalInstance.figletSync('Sync!', { font: 'Star Wars', color: 'blue' });
2018-03-01 00:06:12 +00:00
});
2017-04-21 21:38:51 +00:00
tap.test('.logReduced(message) should only log two messages', async () => {
testLocalInstance.logReduced('Message 1');
testLocalInstance.logReduced('Message 1');
testLocalInstance.logReduced('Message 1');
testLocalInstance.logReduced('Message 1');
testLocalInstance.logReduced('Message 2');
testLocalInstance.logReduced('Message 2');
2018-03-01 00:06:12 +00:00
});
2017-04-21 21:38:51 +00:00
tap.test('.newLine(number) create specified amount of new lines', async () => {
testLocalInstance.newLine(1);
2018-03-01 00:06:12 +00:00
});
2017-04-21 21:38:51 +00:00
tap.test('.ora(text,color) should display, update, and end a message', async () => {
testLocalInstance.ora.start('This is a test text', 'green');
2018-03-01 00:06:12 +00:00
await smartdelay.delayFor(2000);
testLocalInstance.ora.text('updated text!');
2018-03-01 00:06:12 +00:00
await smartdelay.delayFor(2000);
await smartdelay.delayFor(2000);
testLocalInstance.ora.stop();
2018-03-01 00:06:12 +00:00
});
2017-04-21 21:38:51 +00:00
tap.test('.ora(text,color) should display an error message when ended with error', async () => {
testLocalInstance.ora.start('This is another test text', 'green');
2018-03-01 00:06:12 +00:00
await smartdelay.delayFor(2000);
testLocalInstance.ora.stop();
2018-03-01 00:06:12 +00:00
});
2017-04-21 21:38:51 +00:00
2018-03-03 12:57:55 +00:00
tap.start();