Sha256: b9bebc88eb5e8670013f8f38022957bad01cb42cc30c89a0a2106598de5856e1

Contents?: true

Size: 1.76 KB

Versions: 9

Compression:

Stored size: 1.76 KB

Contents

require 'logger'
require 'spec_helper'
require 'sneakers'

describe Sneakers::Runner do
  let(:logger) { Logger.new('logtest.log') }

  describe "with configuration that specifies a logger object" do
    before do
      Sneakers.configure(log: logger)
      @runner = Sneakers::Runner.new([])
    end

    it 'passes the logger to serverengine' do
      # Stub out ServerEngine::Daemon.run so we only exercise the way we invoke
      # ServerEngine.create
      any_instance_of(ServerEngine::Daemon) do |daemon|
        stub(daemon).main{ return 0 }
      end

      @runner.run
      # look at @runner's @se instance variable (actually of type Daemon)...and
      # figure out what it's logger is...
    end
  end
end

describe Sneakers::RunnerConfig do
  let(:logger) { Logger.new("logtest.log") }
  let(:runner_config) { Sneakers::Runner.new([]).instance_variable_get("@runnerconfig") }



  describe "with a connection" do
    before { Sneakers.configure(log: logger, connection: Object.new) }

    describe "#reload_config!" do
      it "does not throw exception" do
        runner_config.reload_config!
      end

      it "must not have :log key" do
        runner_config.reload_config!.has_key?(:log).must_equal false
      end

      it "must have :logger key as an instance of Logger" do
        runner_config.reload_config![:logger].is_a?(Logger).must_equal true
      end
    end
  end

  describe "without a connection" do
    before { Sneakers.configure(log: logger) }

    describe "#reload_config!" do
      it "must not have :log key" do
        runner_config.reload_config!.has_key?(:log).must_equal false
      end

      it "must have :logger key as an instance of Logger" do
        runner_config.reload_config![:logger].is_a?(Logger).must_equal true
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
sneakers-2.6.0 spec/sneakers/runner_spec.rb
sneakers-2.5.0 spec/sneakers/runner_spec.rb
sneakers-2.4.0 spec/sneakers/runner_spec.rb
sneakers-2.3.5 spec/sneakers/runner_spec.rb
sneakers-2.3.4 spec/sneakers/runner_spec.rb
sneakers-2.3.2 spec/sneakers/runner_spec.rb
sneakers-2.3.1 spec/sneakers/runner_spec.rb
sneakers-2.3.0 spec/sneakers/runner_spec.rb
sneakers-2.2.1 spec/sneakers/runner_spec.rb