Sha256: 59719bdf1e6cd0636ec678eed0db513874025148a6aa57a326f2b07e2ee8589d

Contents?: true

Size: 1.6 KB

Versions: 1

Compression:

Stored size: 1.6 KB

Contents

require "spec_helper"
require "daemons/rails/configuration"
require "daemons/rails/monitoring"
require "daemons/rails"

describe Daemons::Rails::Configuration do
  subject { Daemons::Rails.configuration }

  describe "Default configuration" do
    describe "rails env" do
      its(:root) { should == Rails.root }
      its(:daemons_path) { should == Rails.root.join('lib', 'daemons') }
      its(:daemons_path) { should == Pathname.new('lib').join('daemons') }
    end

    describe "no rails" do
      before :all do
        Dir.chdir Rails.root
        Object.const_set :Rails_, Rails
        Object.send :remove_const, :Rails
      end
      after :all do
        Object.const_set :Rails, Rails_
        Object.send :remove_const, :Rails_
        Dir.chdir Rails.root.parent.parent
      end
      its(:root) { should == Rails_.root }
      its(:daemons_path) { should == Rails_.root.join('lib', 'daemons') }
      its(:daemons_path) { should == Pathname.new('lib').join('daemons') }
    end
  end

  describe "Overridden daemons directory" do
    around :each do |example|
      Daemons::Rails.configure do |c|
        c.daemons_path = Rails.root.join('daemons')
      end
      example.run
      Daemons::Rails.configure do |c|
        c.daemons_path = nil
      end
    end

    its(:daemons_path) { should == Rails.root.join('daemons') }
    its(:daemons_path) { should == Pathname.new('daemons') }

    it "should override daemons directory" do
      Daemons::Rails::Monitoring.daemons_path.should == Rails.root.join('daemons')
      Daemons::Rails::Monitoring.controllers.map(&:app_name).should == %w(test2.rb)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
daemons-rails-1.1.0 spec/lib/daemons/rails/configuration_spec.rb