Sha256: cc0c0bbaec02e2cdad26f77de260074ad26a3e6ea78aec97668087837b72f9ed

Contents?: true

Size: 1.2 KB

Versions: 1

Compression:

Stored size: 1.2 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/spec_helper')

describe "ConfigLoader" do
  
  describe ".load" do
    
    def prepare_mocks(running_env, project_root)
      Rails.stub!(:env).and_return(running_env)
      Rails.stub!(:root).and_return('/home/user/project')
      ConfigLoader::Map.should_receive(:new).with('database', running_env, project_root).and_return(@map_mock)
      @map_mock.should_receive(:load).and_return('config')
    end
    
    before(:each) do
      @map_mock = mock('ConfigLoader::Map')
    end
    
    it "should delegate to ConfigLoader::Map.populate" do
      prepare_mocks('development', '/home/user/project')      
      ConfigLoader.load('database').should == 'config'
    end
    
    it "should delegate to ConfigLoader::Map.populate with the given running_env" do
      prepare_mocks('production', '/home/user/project')      
      ConfigLoader.load('database', 'production').should == 'config'
    end

    it "should delegate to ConfigLoader::Map.populate with the given project_root" do
      prepare_mocks('development', '/home/user/another_project')      
      ConfigLoader.load('database', 'development', '/home/user/another_project').should == 'config'
    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
configloader-0.2.2 spec/config_loader_spec.rb