diff --git a/core/enigma_assert.js b/core/enigma_assert.js new file mode 100644 index 00000000..2001825d --- /dev/null +++ b/core/enigma_assert.js @@ -0,0 +1,18 @@ +/* jslint node: true */ +'use strict'; + +// ENiGMA½ +const Config = require('./config.js').config; +const Log = require('./logger.js').log; + +// deps +const assert = require('assert'); + +module.exports = function(condition, message) { + if(Config.debug.assertsEnabled) { + assert.apply(this, arguments); + } else if(!(condition)) { + const stack = new Error().stack; + Log.error( { condition : condition, stack : stack }, message || 'Assertion failed' ); + } +};