Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
log / lib / log / substitute.rb
Size: Mime:
module Log::Substitute
  def self.build
    instance = Log.build(subject)
    sink = Log.register_telemetry_sink(instance)
    instance.telemetry_sink = sink
    instance
  end

  def self.subject
    '(substitute logger)'
  end

  class Log < ::Log
    attr_accessor :telemetry_sink

    def clock
      @clock ||= Clock::UTC::Substitute.build
    end

    def device
      @device ||= NullDevice
    end

    class NullDevice
      def self.write(*)
      end
    end
  end
end