Sha256: 36967af07f494eb63efb93af80bb017fb4449e8c259a15eaf53975fb9ce8a554

Contents?: true

Size: 1.44 KB

Versions: 1

Compression:

Stored size: 1.44 KB

Contents

require_relative 'test_helper'

# Unit Test for SemanticLogger::Appender::Splunk
#
class AppenderSplunkTest < 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

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
semantic_logger-2.16.0 test/appender_splunk_test.rb