You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.4 KiB
62 lines
1.4 KiB
// This easy console wrapper introduces the logging level to console for
|
|
// preventing console outputs caused when we purposely test the code path
|
|
// including console outputs.
|
|
//
|
|
// Example: Prevent the console warnings caused by Color.setStyle().
|
|
// const c = new Color();
|
|
// console.level = CONSOLE_LEVEL.ERROR;
|
|
// c.setStyle( 'rgba(255,0,0,0.5)' );
|
|
// console.level = CONSOLE_LEVEL.DEFAULT;
|
|
//
|
|
// See https://github.com/mrdoob/three.js/issues/20760#issuecomment-735190998
|
|
|
|
export const CONSOLE_LEVEL = {
|
|
OFF: 0,
|
|
ERROR: 1,
|
|
WARN: 2,
|
|
LOG: 3,
|
|
INFO: 4,
|
|
DEBUG: 5,
|
|
ALL: 6,
|
|
DEFAULT: 6
|
|
};
|
|
|
|
console.level = CONSOLE_LEVEL.DEFAULT;
|
|
|
|
// Save the original methods
|
|
console._error = console.error;
|
|
console._warn = console.warn;
|
|
console._log = console.log;
|
|
console._info = console.info;
|
|
console._debug = console.debug;
|
|
|
|
// Wrap console methods
|
|
console.error = function () {
|
|
|
|
if ( this.level >= CONSOLE_LEVEL.ERROR ) this._error.apply( this, arguments );
|
|
|
|
};
|
|
|
|
console.warn = function () {
|
|
|
|
if ( this.level >= CONSOLE_LEVEL.WARN ) this._warn.apply( this, arguments );
|
|
|
|
};
|
|
|
|
console.log = function () {
|
|
|
|
if ( this.level >= CONSOLE_LEVEL.LOG ) this._log.apply( this, arguments );
|
|
|
|
};
|
|
|
|
console.info = function () {
|
|
|
|
if ( this.level >= CONSOLE_LEVEL.INFO ) this._info.apply( this, arguments );
|
|
|
|
};
|
|
|
|
console.debug = function () {
|
|
|
|
if ( this.level >= CONSOLE_LEVEL.DEBUG ) this._debug.apply( this, arguments );
|
|
|
|
};
|
|
|