Files
cypress/cli/lib/logger.js
Brian Mann 2333d04a54 secure cookie error crash (#2685)
- fixes #1264 
- fixes #1321 
- fixes #1799  
- fixes #2689
- fixes #2688
- fixes #2687 	
- fixes #2686
2018-11-01 12:34:37 -04:00

54 lines
1.0 KiB
JavaScript

const R = require('ramda')
const chalk = require('chalk')
let logs = []
const logLevel = () => {
return (process.env.npm_config_loglevel || 'notice')
}
const error = (...messages) => {
logs.push(messages.join(' '))
console.log(chalk.red(...messages)) // eslint-disable-line no-console
}
const warn = (...messages) => {
if (logLevel() === 'silent') return
logs.push(messages.join(' '))
console.log(chalk.yellow(...messages)) // eslint-disable-line no-console
}
const log = (...messages) => {
if (logLevel() === 'silent' || logLevel() === 'warn') return
logs.push(messages.join(' '))
console.log(...messages) // eslint-disable-line no-console
}
// splits long text into lines and calls log()
// on each one to allow easy unit testing for specific message
const logLines = (text) => {
const lines = text.split('\n')
R.forEach(log, lines)
}
const print = () => {
return logs.join('\n')
}
const reset = () => {
logs = []
}
module.exports = {
log,
warn,
error,
logLines,
print,
reset,
logLevel,
}