fix(core): update

This commit is contained in:
Philipp Kunz 2020-06-08 18:51:11 +00:00
parent 3fbd87cab1
commit 9c79a26d04
4 changed files with 34 additions and 8 deletions

View File

@ -1,24 +1,38 @@
import { expect, tap } from '@pushrocks/tapbundle';
import * as smartlog from '../ts/index';
let defaultLogger: smartlog.Smartlog;
let testConsoleLog: smartlog.ConsoleLog;
let testSmartLog: smartlog.Smartlog;
tap.test('should produce a valid ConsoleLog instance', async () => {
testConsoleLog = new smartlog.ConsoleLog();
testConsoleLog.log('ok', 'this is ok');
})
tap.test('should produce instance of Smartlog', async () => {
defaultLogger = smartlog.defaultLogger;
expect(defaultLogger).to.be.instanceOf(smartlog.Smartlog);
testSmartLog = new smartlog.Smartlog({
logContext: {
environment: 'test',
runtime: 'node',
zone: 'gitzone',
company: 'Lossless GmbH',
companyunit: 'Lossless Cloud',
containerName: 'testing'
}
});
});
tap.test('should enable console logging', async () => {
defaultLogger.enableConsole({
testSmartLog.enableConsole({
captureAll: true
});
console.log('this is a normal log that should be captured');
console.log(new Error('hi there'));
defaultLogger.log('info', 'this should only be printed once');
testSmartLog.log('info', 'this should only be printed once');
});
tap.test('should be able to log things', async () => {
defaultLogger.log('silly', 'hi');
testSmartLog.log('silly', 'hi');
});
tap.start();

View File

@ -1,4 +1,6 @@
import * as plugins from './smartlog.plugins';
import { ConsoleLog } from './smartlog.classes.consolelog';
import { LogGroup } from './smartlog.classes.loggroup';
import { Smartlog } from './smartlog.classes.smartlog';
export { Smartlog };
export { ConsoleLog, LogGroup, Smartlog };

View File

@ -0,0 +1,10 @@
import * as plugins from './smartlog.plugins';
/**
* a console log optimized for smartlog
*/
export class ConsoleLog {
public log(logLevelArg: plugins.smartlogInterfaces.TLogLevel, logMessageArg: string) {
console.log(`__# ${logLevelArg}: ${logMessageArg}`);
}
}

View File

@ -34,7 +34,7 @@ export class Smartlog implements plugins.smartlogInterfaces.ILogDestination {
* enables console logging
*/
public enableConsole(optionsArg?: { captureAll: boolean }) {
if (optionsArg && optionsArg.captureAll) {
if (process && optionsArg && optionsArg.captureAll) {
const write = process.stdout.write;
/* import * as fs from 'fs';
const fileStream = fs.createWriteStream(plugins.path.join(paths.nogitDir, 'output.txt'), {