12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- // 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);
- };
|