UNPKG

nightwatch

Version:

Easy to use Node.js based end-to-end testing solution for web applications using the W3C WebDriver API.

93 lines (73 loc) 1.86 kB
const lodashClone = require('lodash.clone'); const Settings = { outputEnabled: true, showResponseHeaders: false, showRequestData: { enabled: true, trimLongScripts: true }, detailedOutput: true, disableErrorLog: false, log_timestamp: false, timestamp_format: null, enabled: true }; module.exports = new (function() { const logSettings = lodashClone(Settings, true); class LogSettings { get outputEnabled() { return logSettings.outputEnabled; } get detailedOutput() { return logSettings.detailedOutput; } get showRequestData() { return logSettings.showRequestData; } get enabled() { return logSettings.enabled; } get showResponseHeaders() { return logSettings.showResponseHeaders; } get timestampFormat() { return logSettings.timestamp_format; } set outputEnabled(value) { if (typeof value == 'undefined') { value = true; } logSettings.outputEnabled = value; } set detailedOutput(value) { logSettings.detailedOutput = value; } set disableErrorLog(value) { if (typeof value == 'undefined') { value = true; } logSettings.disableErrorLog = value; } isLogTimestamp() { return logSettings.log_timestamp; } isErrorLogEnabled() { return !logSettings.disableErrorLog; } disable() { logSettings.enabled = false; } enable() { logSettings.enabled = true; } setLogTimestamp(val, format) { logSettings.log_timestamp = val; logSettings.timestamp_format = format; } setHttpLogOptions({showRequestData, showResponseHeaders}) { logSettings.showRequestData = showRequestData; logSettings.showResponseHeaders = showResponseHeaders; } } return new LogSettings(); })();