Sha256: 5b7c4ec483ab9705d0b5a30e34cbd59c4df6be68087bb70d6f4294386daf4cbd

Contents?: true

Size: 879 Bytes

Versions: 2

Compression:

Stored size: 879 Bytes

Contents

# frozen_string_literal: true

require 'test_helper'

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

2 entries across 2 versions & 1 rubygems

Version Path
statsd-instrument-3.0.2 test/log_sink_test.rb
statsd-instrument-3.0.1 test/log_sink_test.rb