File: logging_reporter_spec.rb

package info (click to toggle)
ruby-jaeger-client 1.3.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 624 kB
  • sloc: ruby: 3,381; makefile: 6; sh: 4
file content (28 lines) | stat: -rw-r--r-- 911 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
require 'spec_helper'

RSpec.describe Jaeger::Reporters::LoggingReporter do
  let(:reporter) { described_class.new(logger: logger) }
  let(:logger) { instance_spy(Logger) }

  describe '#report' do
    it 'logs out span information' do
      operation_name = 'my-op-name'
      start_time = Time.utc(2018, 11, 10, 15, 24, 30)
      end_time = Time.utc(2018, 11, 10, 15, 24, 33)

      span = build_span(operation_name: operation_name, start_time: start_time)
      span.finish(end_time: end_time)
      reporter.report(span)

      expect(logger).to have_received(:info).with(
        <<-STR.gsub(/\s+/, ' ').strip
          Span reported: {:operation_name=>"#{operation_name}",
          :start_time=>"#{start_time.iso8601}",
          :end_time=>"#{end_time.iso8601}",
          :trace_id=>"#{span.context.to_trace_id}",
          :span_id=>"#{span.context.to_span_id}"}
        STR
      )
    end
  end
end