Sha256: 4a172772d7a5e566d98742cafcf129b6a68096f83b0f1766d7b0974f0ba434e0

Contents?: true

Size: 1.53 KB

Versions: 1

Compression:

Stored size: 1.53 KB

Contents

require_relative 'test_helper'

# Unit Test for SemanticLogger::Appender::Splunk
#
module Appender
  class SplunkTest < Minitest::Test
    describe SemanticLogger::Appender::Splunk do

      describe '#parse_options' do
        describe 'argument errors' do
          it 'raise argument error for missing username' do
            error = assert_raises ArgumentError do
              SemanticLogger::Appender::Splunk.new({})
            end

            assert_equal 'Must supply a username.', error.message
          end

          it 'raise argument error for missing password' do
            error = assert_raises ArgumentError do
              SemanticLogger::Appender::Splunk.new(username: 'username')
            end

            assert_equal 'Must supply a password.', error.message
          end
        end

        describe 'set default values' do
          it 'have default values' do
            appender = Splunk.stub(:connect, Splunk::Service.new({})) do
              Splunk::Service.stub_any_instance(:indexes, {}) do
                SemanticLogger::Appender::Splunk.new(username: 'username', password: 'password')
              end
            end
            config   = appender.config
            # Default host
            assert_equal 'localhost', config[:host]
            # Default port
            assert_equal 8089, config[:port]
            # Default scheme
            assert_equal :https, config[:scheme]
            #Default index
            assert_equal 'main', appender.index
          end
        end
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
semantic_logger-2.17.0 test/appender/splunk_test.rb