Sha256: e68a5c17b4b11d25e61ceb0763ede3a4cf22828ba7e8c7ac8ddf2f9a2de8c5cd

Contents?: true

Size: 1.23 KB

Versions: 10

Compression:

Stored size: 1.23 KB

Contents

require 'test_plugin_helper'

# Tests for the behavior of Host with roles, checks inheritance, etc
class HostManagedExtensionsTest < ActiveSupport::TestCase
  before do
    @role1 = FactoryBot.create(:ansible_role)
    @role2 = FactoryBot.create(:ansible_role)
    @role3 = FactoryBot.create(:ansible_role)

    @hostgroup_parent = FactoryBot.create(:hostgroup,
                                          :ansible_roles => [@role2])
    @hostgroup = FactoryBot.create(:hostgroup, :parent => @hostgroup_parent)
    @host = FactoryBot.build_stubbed(:host, :ansible_roles => [@role1])
  end

  describe '#all_ansible_roles' do
    test 'returns assigned roles for host without a hostgroup' do
      @host.all_ansible_roles.must_equal [@role1]
    end

    test 'returns assigned and inherited roles for host with a hostgroup' do
      @host.hostgroup = @hostgroup
      @host.all_ansible_roles.must_equal [@role1, @role2]
    end
  end

  describe '#inherited_ansible_roles' do
    test 'returns empty array for host without hostgroup' do
      @host.inherited_ansible_roles.must_equal []
    end

    test 'returns roles inherited from a hostgroup' do
      @host.hostgroup = @hostgroup
      @host.inherited_ansible_roles.must_equal [@role2]
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
foreman_ansible-2.2.1 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.2.0 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.1.2 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.1.1 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.0.4 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.0.3 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.0.2 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.1.0 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.0.1 test/unit/concerns/host_managed_extensions_test.rb
foreman_ansible-2.0.0 test/unit/concerns/host_managed_extensions_test.rb