Sha256: ed1f8369fd0ee4327123729dfc72c8dc88e9deb1eb50f9a8b26f353eb5fe3e52

Contents?: true

Size: 541 Bytes

Versions: 4

Compression:

Stored size: 541 Bytes

Contents

RSpec::Matchers.define :contains_log do |level, message|
  log_level_prefix = level.upcase

  match do |actual|
    case message
    when Regexp
      /\[#{log_level_prefix}\] #{message}/.match?(actual)
    else
      expected_log_line = "[#{log_level_prefix}] #{message}"
      actual.include?(expected_log_line)
    end
  end

  failure_message do |actual|
    <<~MESSAGE
      Did not contain log line:
      Log level: #{log_level_prefix}
      Message: #{message}

      Received logs:
      #{actual}
    MESSAGE
  end

  diffable
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
appsignal-4.0.6-java spec/support/matchers/contains_log.rb
appsignal-4.0.6 spec/support/matchers/contains_log.rb
appsignal-4.0.5-java spec/support/matchers/contains_log.rb
appsignal-4.0.5 spec/support/matchers/contains_log.rb