Module: SemanticLogger::Test::Minitest
- Defined in:
- lib/semantic_logger/test/minitest.rb
Instance Method Summary collapse
-
#assert_semantic_logger_event(event, level: nil, name: nil, message: nil, message_includes: nil, payload: nil, payload_includes: nil, exception: nil, exception_includes: nil, backtrace: nil, thread_name: nil, tags: nil, named_tags: nil, context: nil, level_index: nil, duration: nil, time: nil, metric: nil, metric_amount: nil, dimensions: nil) ⇒ Object
Verify a single log event has all the required attributes.
-
#semantic_logger_events(deprecated_klass = nil, klass: deprecated_klass, silence: :trace, &block) ⇒ Object
Returns [Array<SemanticLogger::Log>] the log events from Semantic Logger captured whilst executing the supplied block.
Instance Method Details
#assert_semantic_logger_event(event, level: nil, name: nil, message: nil, message_includes: nil, payload: nil, payload_includes: nil, exception: nil, exception_includes: nil, backtrace: nil, thread_name: nil, tags: nil, named_tags: nil, context: nil, level_index: nil, duration: nil, time: nil, metric: nil, metric_amount: nil, dimensions: nil) ⇒ Object
Verify a single log event has all the required attributes.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/semantic_logger/test/minitest.rb', line 24 def assert_semantic_logger_event(event, level: nil, name: nil, message: nil, message_includes: nil, payload: nil, payload_includes: nil, exception: nil, exception_includes: nil, backtrace: nil, thread_name: nil, tags: nil, named_tags: nil, context: nil, level_index: nil, duration: nil, time: nil, metric: nil, metric_amount: nil, dimensions: nil) assert event, "No log event occurred" assert_semantic_logger_entry(event, :message, ) assert_semantic_logger_entry(event, :name, name) assert_semantic_logger_entry(event, :level, level) assert_semantic_logger_entry(event, :thread_name, thread_name) assert_semantic_logger_entry(event, :tags, ) assert_semantic_logger_entry(event, :named_tags, ) assert_semantic_logger_entry(event, :context, context) assert_semantic_logger_entry(event, :metric, metric) assert_semantic_logger_entry(event, :metric_amount, metric_amount) assert_semantic_logger_entry(event, :dimensions, dimensions) assert_semantic_logger_entry(event, :level_index, level_index) assert_semantic_logger_entry(event, :duration, duration) assert_semantic_logger_entry(event, :time, time) assert_semantic_logger_entry(event, :exception, exception) assert_semantic_logger_entry(event, :backtrace, backtrace) assert_semantic_logger_entry(event, :payload, payload) if assert_includes( event., , -> { "Expected message to include '#{}' in log event #{event.inspect}" } ) end if payload_includes payload_includes.each_pair do |key, expected| actual = event.payload[key] assert_semantic_logger_entry(event, "payload #{name}", expected, actual) end end if exception_includes payload_includes.each_pair do |key, expected| actual = event.exception.send(key) assert_semantic_logger_entry(event, "Exception #{name}", expected, actual) end end end |
#semantic_logger_events(deprecated_klass = nil, klass: deprecated_klass, silence: :trace, &block) ⇒ Object
Returns [Array<SemanticLogger::Log>] the log events from Semantic Logger captured whilst executing the supplied block.
Notes:
-
All log messages are returned regardless of the global default log level.
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/semantic_logger/test/minitest.rb', line 9 def semantic_logger_events(deprecated_klass = nil, klass: deprecated_klass, silence: :trace, &block) logger = SemanticLogger::Test::CaptureLogEvents.new if klass klass.stub(:logger, logger, &block) elsif silence SemanticLogger.silence(silence) do SemanticLogger::Logger.stub(:processor, logger, &block) end else SemanticLogger::Logger.stub(:processor, logger, &block) end logger.events end |