Sha256: 29b5b040032898afb97789836307bb9092a6dc773a74a0a338fb89d241fcb852
Contents?: true
Size: 1.6 KB
Versions: 8
Compression:
Stored size: 1.6 KB
Contents
require 'test/unit' require 'tempfile' require 'test_helper' class InstanceTest < Test::Unit::TestCase include Rubber::Configuration def setup @instance = Instance.new(Tempfile.new('testforrole').path) @instance.add(@i1 = InstanceItem.new('host1', 'domain.com', [RoleItem.new('role1')], '')) @instance.add(@i2 = InstanceItem.new('host2', 'domain.com', [RoleItem.new('role1')], '')) @instance.add(@i3 = InstanceItem.new('host3', 'domain.com', [RoleItem.new('role2')], '')) @instance.add(@i4 = InstanceItem.new('host4', 'domain.com', [RoleItem.new('role2', 'primary' => true)], '')) end def test_for_role assert_equal 2, @instance.for_role('role1').size, 'not finding correct instances for role' assert_equal 2, @instance.for_role('role2').size, 'not finding correct instances for role' assert_equal 1, @instance.for_role('role2', {}).size, 'not finding correct instances for role' assert_equal @i3, @instance.for_role('role2', {}).first, 'not finding correct instances for role' assert_equal 1, @instance.for_role('role2', 'primary' => true).size, 'not finding correct instances for role' assert_equal @i4, @instance.for_role('role2', 'primary' => true).first, 'not finding correct instances for role' end def test_filtered assert_equal 4, @instance.filtered().size, 'should not filter for empty FILTER' ENV['FILTER'] = 'host1' setup assert_equal [@i1], @instance.filtered(), 'should have only filtered host' ENV['FILTER'] = 'host2 , host4' setup assert_equal [@i2, @i4], @instance.filtered(), 'should have only filtered hosts' end end
Version data entries
8 entries across 8 versions & 1 rubygems