@case-contract-testing/case
Version:
Next-generation contract testing suite
28 lines (27 loc) • 1.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.shouldLog = void 0;
const entities_1 = require("../../entities");
const shouldLog = (context, logLevel) => {
switch (context['case:currentRun:context:logLevel']) {
case 'none':
return false;
case 'error':
return logLevel === 'error';
case 'warn':
return (logLevel !== 'deepMaintainerDebug' &&
logLevel !== 'maintainerDebug' &&
logLevel !== 'debug');
case 'debug':
return (logLevel !== 'maintainerDebug' && logLevel !== 'deepMaintainerDebug');
case 'maintainerDebug':
return logLevel !== 'deepMaintainerDebug';
case 'deepMaintainerDebug':
return true;
case undefined:
throw new entities_1.CaseCoreError(`The run context had no log level, but this should never happen. (context[case:currentRun:context:logLevel] is ${context['case:currentRun:context:logLevel']})`);
default:
throw new entities_1.CaseConfigurationError(`Unknown log level '${context['case:currentRun:context:logLevel']}'`);
}
};
exports.shouldLog = shouldLog;