Sha256: 3628bd29e714bea795da9319e61d070d57c6dc6a668b69e382d28cb3b79e0b6f

Contents?: true

Size: 877 Bytes

Versions: 3

Compression:

Stored size: 877 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

3 entries across 3 versions & 1 rubygems

Version Path
statsd-instrument-2.8.0 test/log_sink_test.rb
statsd-instrument-2.7.1 test/log_sink_test.rb
statsd-instrument-2.7.0 test/log_sink_test.rb