UNPKG

@leansdk/leanrc

Version:

LeanRC is a MVC framework for creating graceful applications

92 lines (90 loc) 4.31 kB
{ expect, assert } = require 'chai' sinon = require 'sinon' LeanRC = require.main.require 'lib' { co } = LeanRC::Utils describe 'LogMessage', -> describe '.new', -> it 'should create new LogMessage instance', -> co -> vnLevel = LeanRC::LogMessage.NONE vsSender = 'TEST_SENDER' vsMessage = msg: 'TEST_MESSAGE' message = LeanRC::LogMessage.new vnLevel, vsSender, vsMessage assert.instanceOf message, LeanRC::LogMessage assert.equal message[Symbol.for '~header'].logLevel, vnLevel assert.deepEqual message[Symbol.for '~header'].sender, vsSender assert.equal message[Symbol.for '~body'], vsMessage assert.equal message[Symbol.for '~type'], LeanRC::Pipes::PipeMessage.NORMAL assert.equal message[Symbol.for '~priority'], LeanRC::Pipes::PipeMessage.PRIORITY_MED assert.deepEqual LeanRC::LogMessage.LEVELS, [ 'NONE', 'FATAL', 'ERROR', 'WARN', 'INFO', 'DEBUG' ] assert.equal LeanRC::LogMessage.SEND_TO_LOG, 'namespaces/pipes/messages/LoggerModule/sendToLog' assert.equal LeanRC::LogMessage.STDLOG, 'standardLog' yield return describe '#logLevel', -> it 'should test logging level', -> co -> vnLevel = -2 vsSender = 'TEST_SENDER' vsMessage = msg: 'TEST_MESSAGE' message = LeanRC::LogMessage.new vnLevel, vsSender, vsMessage assert.equal message[Symbol.for '~header'].logLevel, vnLevel message.logLevel = LeanRC::LogMessage.CHANGE assert.equal message.logLevel, LeanRC::LogMessage.CHANGE assert.equal message[Symbol.for '~header'].logLevel, LeanRC::LogMessage.CHANGE message.logLevel = LeanRC::LogMessage.NONE assert.equal message.logLevel, LeanRC::LogMessage.NONE assert.equal message[Symbol.for '~header'].logLevel, LeanRC::LogMessage.NONE message.logLevel = LeanRC::LogMessage.FATAL assert.equal message.logLevel, LeanRC::LogMessage.FATAL assert.equal message[Symbol.for '~header'].logLevel, LeanRC::LogMessage.FATAL message.logLevel = LeanRC::LogMessage.ERROR assert.equal message.logLevel, LeanRC::LogMessage.ERROR assert.equal message[Symbol.for '~header'].logLevel, LeanRC::LogMessage.ERROR message.logLevel = LeanRC::LogMessage.WARN assert.equal message.logLevel, LeanRC::LogMessage.WARN assert.equal message[Symbol.for '~header'].logLevel, LeanRC::LogMessage.WARN message.logLevel = LeanRC::LogMessage.INFO assert.equal message.logLevel, LeanRC::LogMessage.INFO assert.equal message[Symbol.for '~header'].logLevel, LeanRC::LogMessage.INFO message.logLevel = LeanRC::LogMessage.DEBUG assert.equal message.logLevel, LeanRC::LogMessage.DEBUG assert.equal message[Symbol.for '~header'].logLevel, LeanRC::LogMessage.DEBUG yield return describe '#sender', -> it 'should test sender', -> co -> vnLevel = LeanRC::LogMessage.NONE vsSender = 'TEST_SENDER' vsMessage = msg: 'TEST_MESSAGE' message = LeanRC::LogMessage.new vnLevel, vsSender, vsMessage assert.equal message[Symbol.for '~header'].sender, vsSender assert.equal message.sender, vsSender vsSender = 'TEST_ANOTHER_SENDER' message.sender = vsSender assert.equal message[Symbol.for '~header'].sender, vsSender assert.equal message.sender, vsSender yield return describe '#time', -> it 'should test time', -> co -> vnLevel = LeanRC::LogMessage.NONE vsSender = 'TEST_SENDER' vsMessage = msg: 'TEST_MESSAGE' message = LeanRC::LogMessage.new vnLevel, vsSender, vsMessage vsTime = new Date().toISOString() message.time = vsTime assert.equal message[Symbol.for '~header'].time, vsTime assert.equal message.time, vsTime yield return describe '#message', -> it 'should test message', -> co -> vnLevel = LeanRC::LogMessage.NONE vsSender = 'TEST_SENDER' vsMessage = msg: 'TEST_MESSAGE' message = LeanRC::LogMessage.new vnLevel, vsSender, vsMessage assert.equal message[Symbol.for '~body'], vsMessage assert.equal message.message, vsMessage yield return