Sha256: e31078fa7f1668c0cc323955209b8e4550df2f456d87647d8f9da005d4028dec

Contents?: true

Size: 987 Bytes

Versions: 3

Compression:

Stored size: 987 Bytes

Contents

require 'spec_helper'
require_relative '../spec/factories/role.rb'
require_relative '../spec/factories/node.rb'
require_relative '../spec/factories/provision.rb'

describe 'Test 15: Associate node and role' do

  let(:role) { build(:role) }
  let(:nodes) { [build(:node)] }

  context 'set role' do
    it 'should add a role to a node' do
      node = nodes.first
      Bebox::Provision.associate_node_role(node.project_root, node.environment, node.hostname, role.name)
      expected_content = File.read('spec/fixtures/puppet/steps/step-2/manifests/site_with_node_role_association.pp.test').strip
      output_file = File.read("#{node.project_root}/puppet/steps/2-services/manifests/site.pp").strip
      expect(output_file).to eq(expected_content)
    end

    it 'gets the role from a node' do
      node = nodes.first
      expected_role = Bebox::Provision.role_from_node(node.project_root, 'step-2', node.hostname)
      expect(expected_role).to include(role.name)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
bebox-0.1.5 spec/node_role_spec.rb
bebox-0.1.4 spec/node_role_spec.rb
bebox-0.1.3 spec/node_role_spec.rb