Sha256: b06818b214f43bc697ac89cb205d7717043781c2e53e828c7906b8ecd1907dfa

Contents?: true

Size: 913 Bytes

Versions: 1

Compression:

Stored size: 913 Bytes

Contents

# frozen_string_literal: true

require 'test_helper'

require 'statsd/instrument/client'

class LogSinktest < Minitest::Test
  def test_log_sink
    logger = Logger.new(log = StringIO.new)
    logger.formatter = proc do |severity, _datetime, _progname, msg|
      "#{severity}: #{msg}\n"
    end

    log_sink = StatsD::Instrument::LogSink.new(logger)
    log_sink << 'foo:1|c' << 'bar:1|c'

    assert_equal <<~LOG, log.string
      DEBUG: [StatsD] foo:1|c
      DEBUG: [StatsD] bar:1|c
    LOG
  end

  def test_log_sink_chomps_trailing_newlines
    logger = Logger.new(log = StringIO.new)
    logger.formatter = proc do |severity, _datetime, _progname, msg|
      "#{severity}: #{msg}\n"
    end

    log_sink = StatsD::Instrument::LogSink.new(logger)
    log_sink << "foo:1|c\n" << "bar:1|c\n"

    assert_equal <<~LOG, log.string
      DEBUG: [StatsD] foo:1|c
      DEBUG: [StatsD] bar:1|c
    LOG
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
statsd-instrument-2.6.0 test/log_sink_test.rb