Sha256: 5edf49a0bbd614d9eb47ef8ae7efd6be891afe65fa8e4b073b1e1e11821bcc92

Contents?: true

Size: 1023 Bytes

Versions: 1

Compression:

Stored size: 1023 Bytes

Contents

require 'spec_helper'

describe Berkshelf::Config do
  let(:klass) { described_class }

  describe "ClassMethods" do
    subject { klass }

    describe "::file" do
      subject { klass.file }

      context "when the file does not exist" do
        before :each do
          File.stub exists?: false
        end

        it { should be_nil }
      end
    end

    describe "::instance" do
      subject { klass.instance }

      it { should be_a klass }
    end

    describe "::path" do
      subject { klass.path }

      it { should be_a String }

      it "points to a location within ENV['BERKSHELF_PATH']" do
        ENV.stub(:[]).with('BERKSHELF_PATH').and_return('/tmp')

        subject.should eql("/tmp/config.json")
      end
    end

    describe "::chef_config" do
      it "returns the Chef::Config" do
        subject.chef_config.should eql(Chef::Config)
      end
    end

    describe "::chef_config_path" do
      subject { klass.chef_config_path }

      it { should be_a String }  
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
berkshelf-1.0.0.rc1 spec/unit/berkshelf/config_spec.rb