Class: Epilog::MockLogger
- Inherits:
-
Logger
- Object
- Logger
- Epilog::MockLogger
- Defined in:
- lib/epilog/mock_logger.rb
Instance Method Summary collapse
- #[](index) ⇒ Object
- #add(severity, message = nil, progname = nil) ⇒ Object (also: #log)
- #freeze_time(time) ⇒ Object
-
#initialize(**options) ⇒ MockLogger
constructor
A new instance of MockLogger.
- #pop_context ⇒ Object
- #push_context(context) ⇒ Object
- #reopen(_logdev = nil) ⇒ Object
- #reset ⇒ Object
- #to_a ⇒ Object
- #with_context(context) ⇒ Object
Constructor Details
#initialize(**options) ⇒ MockLogger
Returns a new instance of MockLogger.
5 6 7 8 |
# File 'lib/epilog/mock_logger.rb', line 5 def initialize(**) super(nil, **) reset end |
Instance Method Details
#[](index) ⇒ Object
31 32 33 |
# File 'lib/epilog/mock_logger.rb', line 31 def [](index) @logs[index].dup || [] end |
#add(severity, message = nil, progname = nil) ⇒ Object Also known as: log
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/epilog/mock_logger.rb', line 10 def add(severity, = nil, progname = nil) severity ||= Logger::UNKNOWN return true if severity < level prog ||= progname if .nil? if block_given? = yield else = prog prog = progname end end write(format_severity(severity), current_time, prog, ) end |
#freeze_time(time) ⇒ Object
39 40 41 |
# File 'lib/epilog/mock_logger.rb', line 39 def freeze_time(time) @time = time end |
#pop_context ⇒ Object
58 59 60 |
# File 'lib/epilog/mock_logger.rb', line 58 def pop_context @context.pop end |
#push_context(context) ⇒ Object
54 55 56 |
# File 'lib/epilog/mock_logger.rb', line 54 def push_context(context) @context << context end |
#reopen(_logdev = nil) ⇒ Object
28 29 |
# File 'lib/epilog/mock_logger.rb', line 28 def reopen(_logdev = nil) end |
#reset ⇒ Object
43 44 45 46 |
# File 'lib/epilog/mock_logger.rb', line 43 def reset @logs = [] @context = [] end |
#to_a ⇒ Object
35 36 37 |
# File 'lib/epilog/mock_logger.rb', line 35 def to_a (0...@logs.size).map { |i| self[i] } end |
#with_context(context) ⇒ Object
48 49 50 51 52 |
# File 'lib/epilog/mock_logger.rb', line 48 def with_context(context) push_context(context) yield pop_context end |