Sha256: 1cb2e793243e41488d3fb756fabae5f03d7bcdf610b9cd82a0b984b1e83be6c5

Contents?: true

Size: 994 Bytes

Versions: 59

Compression:

Stored size: 994 Bytes

Contents

require 'spec_helper'
require 'r10k/settings/collection'
require 'r10k/settings/definition'

RSpec.describe 'R10K::Settings inheritance' do
  subject do
    R10K::Settings::Collection.new(:parent_settings, [
      R10K::Settings::Definition.new(:banana, {
        :default => 'cavendish',
      }),

      R10K::Settings::Collection.new(:child_settings, [
        R10K::Settings::Definition.new(:banana, {
          :default => :inherit,
        }),
      ]),
    ])
  end

  describe "child settings" do
    let(:setting) { subject[:child_settings][:banana] }

    context "when child value is not set" do
      it "should resolve to default value from parent" do
        expect(setting.value).to be_nil
        expect(setting.resolve).to eq 'cavendish'
      end
    end

    context "when child value is set" do
      before(:each) { setting.assign('gros michel') }

      it "should resolve to child value" do
        expect(setting.resolve).to eq 'gros michel'
      end
    end
  end
end

Version data entries

59 entries across 59 versions & 2 rubygems

Version Path
r10k-3.15.0 spec/unit/settings/inheritance_spec.rb
akerl-r10k-3.14.2.1 spec/unit/settings/inheritance_spec.rb
r10k-3.14.2 spec/unit/settings/inheritance_spec.rb
r10k-3.14.1 spec/unit/settings/inheritance_spec.rb
r10k-3.14.0 spec/unit/settings/inheritance_spec.rb
r10k-3.13.0 spec/unit/settings/inheritance_spec.rb
r10k-3.12.1 spec/unit/settings/inheritance_spec.rb
r10k-3.12.0 spec/unit/settings/inheritance_spec.rb
r10k-3.11.0 spec/unit/settings/inheritance_spec.rb
r10k-3.10.0 spec/unit/settings/inheritance_spec.rb
r10k-3.9.3 spec/unit/settings/inheritance_spec.rb
r10k-3.9.2 spec/unit/settings/inheritance_spec.rb
r10k-3.9.1 spec/unit/settings/inheritance_spec.rb
r10k-3.9.0 spec/unit/settings/inheritance_spec.rb
r10k-3.8.0 spec/unit/settings/inheritance_spec.rb
r10k-3.7.0 spec/unit/settings/inheritance_spec.rb
r10k-3.6.0 spec/unit/settings/inheritance_spec.rb
r10k-2.6.9 spec/unit/settings/inheritance_spec.rb
r10k-3.5.2 spec/unit/settings/inheritance_spec.rb
r10k-3.5.1 spec/unit/settings/inheritance_spec.rb