Project

General

Profile

Download (5.02 KB) Statistics
| Branch: | Tag: | Revision:
# Create notification blueprints prior to tests
module FactImporterIsolation
extend ActiveSupport::Concern

def allow_transactions_for(importer)
importer.stubs(:ensure_no_active_transaction).returns(true)
end

def allow_transactions_for_any_importer
Foreman::Plugin.fact_importer_registry.importers.values.map(&:constantize).each do |importer|
allow_transactions_for(importer.any_instance)
end
end

module ClassMethods
def allow_transactions_for_any_importer
setup :allow_transactions_for_any_importer
end
end
end

module FactsData
class FlatFacts
def filter
['ignore*', '*_bad', 'filter']
end

def good_facts
{
'just_a_fact' => 'hello',
'nofilter' => 'hello',
}
end

def ignored_facts
{
'ignored_fact' => 'will_not_show',
'fact_bad' => 'will_not_show',
'filter' => 'will_not_show',
'ignore' => 'will_not_show',
'_bad' => 'will_not_show',
}
end
end

class RhsmStyleFacts
def filter
['ignore*', '*_bad', 'filter']
end

def good_facts
{
'something::something_else' => 'hello',
}
end

def ignored_facts
{
'ignored_fact::something' => 'will_not_show',
'something::ignored_fact' => 'will_not_show',
'something::ignored_fact::something_else' => 'will_not_show',
'fact_bad::something' => 'will_not_show',
'something::fact_bad' => 'will_not_show',
'something::fact_bad::something_else' => 'will_not_show',
'filter::something' => 'will_not_show',
'something::filter' => 'will_not_show',
'something::filter::something_else' => 'will_not_show',
}
end
end

class FlatPuppetStyleFacts
def filter
['ignore*', '*_bad', 'filter']
end

def good_facts
{
'something_filter_something_else' => 'hello',
'filter_something' => 'hello',
}
end

def ignored_facts
{
'ignored_fact_something' => 'will_not_show',
'something_fact_bad' => 'will_not_show',
'filter' => 'will_not_show',
'mtu_filter' => 'will_not_show',
'facter_mtu_filter' => 'will_not_show',
'ipaddress_filter' => 'will_not_show',
'ipaddress6_filter' => 'will_not_show',
'facter_ipaddress6_filter' => 'will_not_show',
}
end
end

class HierarchicalPuppetStyleFacts
def filter
['ignored*']
end

def good_facts
{
:good => 'hello',
:common_ancestor => {
:good_subtree => {
:good_key => 'hello',
},
},
}
end

def ignored_facts
{
:common_ancestor => {
:ignored_subtree => {
:key1 => 'will_not_show',
:key2 => 'will_not_show',
},
},
:empty_ancestor => {
:ignored_key => 'will_not_show',
},
:ignored_value => 'will_not_show',
}
end

def flat_result
{
"good" => "hello",
"common_ancestor::good_subtree::good_key" => "hello",
"common_ancestor::good_subtree" => nil,
"common_ancestor" => nil,
}
end
end

class DefaultInterfacesFacts
def filter
Setting[:excluded_facts]
end

def good_facts
{
'macaddress_virbr4' => 'fe:54:00:59:4e:bf',
'mtu_virbr4' => '1500',
'non_docker_host' => 'non_docker_host',
'net::interface::virbr4::ipv6_address::link' => 'fe80::fc54:ff:fe59:4ebf',
'net::interface::virbr4::ipv6_address::link_list' => 'fe80::fc54:ff:fe59:4ebf',
'net::interface::virbr4::ipv6_netmask::link' => '64',
'net::interface::virbr4::ipv6_netmask::link_list' => '64',
'net::interface::virbr4::mac_address' => 'FE:54:00:59:4E:BF',
'net::interface::virbr4::permanent_mac_address' => 'Unknown',
}
end

def ignored_facts
{
'macaddress_vnet4' => 'fe:54:00:59:4e:bf',
'mtu_vnet4' => '1500',
'docker_host' => 'ignored_host',
'net::interface::vnet4::ipv6_address::link' => 'fe80::fc54:ff:fe59:4ebf',
'net::interface::macvtap1::ipv6_address::link_list' => 'fe80::fc54:ff:fe59:4ebf',
'net::interface::veth4::ipv6_netmask::link' => '64',
'net::interface::docker4::ipv6_netmask::link_list' => '64',
'net::interface::vlinuxbr4::mac_address' => 'FE:54:00:59:4E:BF',
'net::interface::usb4::permanent_mac_address' => 'Unknown',
'load_averages::5m' => '0.01',
'load_averages::10m' => '0.02',
'load_averages::15m' => '0.03',
'memory::system::capacity' => '0%',
'memory::system::used' => '0 bytes',
'memory::system::used_bytes' => '0',
'memory::system::available' => '1.00 GiB',
'memory::system::available_bytes' => '1073737728',
'memory::swap::capacity' => '0%',
'memory::swap::used' => '0 bytes',
'memory::swap::used_bytes' => '0',
'memory::swap::available' => '1.00 GiB',
'memory::swap::available_bytes' => '1073737728',
}
end
end
end
(4-4/9)