Revision 77f70152
Added by Stephen Benjamin about 10 years ago
test/unit/organization_test.rb | ||
---|---|---|
test 'organization is valid if ignore all types' do
|
||
organization = taxonomies(:organization1)
|
||
organization.location_ids = [taxonomies(:location1).id]
|
||
organization.ignore_types = ["Domain", "Hostgroup", "Environment", "User", "Medium", "Subnet", "SmartProxy", "ConfigTemplate", "ComputeResource"]
|
||
organization.ignore_types = ["Domain", "Hostgroup", "Environment", "User", "Medium", "Subnet", "SmartProxy", "ConfigTemplate", "ComputeResource", "Realm"]
|
||
assert organization.valid?
|
||
end
|
||
|
||
... | ... | |
hostgroup_ids = Host.where(:organization_id => organization.id).pluck(:hostgroup_id).compact.uniq
|
||
subnet_ids = Host.where(:organization_id => organization.id).pluck(:subnet_id).compact.uniq
|
||
domain_ids = Host.where(:organization_id => organization.id).pluck(:domain_id).compact.uniq
|
||
realm_ids = Host.where(:organization_id => organization.id).pluck(:realm_id).compact.uniq
|
||
medium_ids = Host.where(:organization_id => organization.id).pluck(:medium_id).compact.uniq
|
||
compute_resource_ids = Host.where(:organization_id => organization.id).pluck(:compute_resource_id).compact.uniq
|
||
user_ids = Host.where(:organization_id => organization.id).where(:owner_type => 'User').pluck(:owner_id).compact.uniq
|
||
... | ... | |
assert_equal used_ids[:hostgroup_ids], hostgroup_ids
|
||
assert_equal used_ids[:subnet_ids], subnet_ids
|
||
assert_equal used_ids[:domain_ids], domain_ids
|
||
assert_equal used_ids[:realm_ids], realm_ids
|
||
assert_equal used_ids[:medium_ids], medium_ids
|
||
assert_equal used_ids[:compute_resource_ids], compute_resource_ids
|
||
assert_equal used_ids[:user_ids].sort, user_ids.sort
|
||
... | ... | |
assert_equal used_ids[:medium_ids], []
|
||
assert_equal used_ids[:compute_resource_ids].sort, [compute_resources(:one).id]
|
||
assert_equal used_ids[:user_ids], [users(:restricted).id]
|
||
assert_equal used_ids[:smart_proxy_ids].sort, [smart_proxies(:one).id, smart_proxies(:two).id, smart_proxies(:three).id, smart_proxies(:puppetmaster).id].sort
|
||
assert_equal used_ids[:smart_proxy_ids].sort, [smart_proxies(:one).id, smart_proxies(:two).id, smart_proxies(:three).id, smart_proxies(:puppetmaster).id, smart_proxies(:realm).id].sort
|
||
assert_equal used_ids[:config_template_ids].sort, [config_templates(:mystring2).id]
|
||
end
|
||
|
||
... | ... | |
hostgroup_ids = organization.hostgroup_ids
|
||
subnet_ids = organization.subnet_ids
|
||
domain_ids = organization.domain_ids
|
||
realm_ids = organization.realm_ids
|
||
medium_ids = organization.medium_ids
|
||
user_ids = organization.user_ids
|
||
smart_proxy_ids = organization.smart_proxy_ids
|
||
... | ... | |
assert_equal selected_ids[:hostgroup_ids].sort, hostgroup_ids.sort
|
||
assert_equal selected_ids[:subnet_ids].sort, subnet_ids.sort
|
||
assert_equal selected_ids[:domain_ids].sort, domain_ids.sort
|
||
assert_equal selected_ids[:realm_ids].sort, realm_ids.sort
|
||
assert_equal selected_ids[:medium_ids].sort, medium_ids.sort
|
||
assert_equal selected_ids[:user_ids].sort, user_ids.sort
|
||
assert_equal selected_ids[:smart_proxy_ids].sort, smart_proxy_ids.sort
|
||
... | ... | |
assert_equal selected_ids[:domain_ids], [domains(:mydomain).id]
|
||
assert_equal selected_ids[:medium_ids], []
|
||
assert_equal selected_ids[:user_ids], []
|
||
assert_equal selected_ids[:smart_proxy_ids].sort, [smart_proxies(:puppetmaster).id, smart_proxies(:one).id, smart_proxies(:two).id, smart_proxies(:three).id].sort
|
||
assert_equal selected_ids[:smart_proxy_ids].sort, [smart_proxies(:puppetmaster).id, smart_proxies(:one).id, smart_proxies(:two).id, smart_proxies(:three).id, smart_proxies(:realm).id].sort
|
||
assert_equal selected_ids[:config_template_ids], [config_templates(:mystring2).id]
|
||
assert_equal selected_ids[:compute_resource_ids], [compute_resources(:one).id]
|
||
end
|
||
... | ... | |
test 'it should return selected_ids array of ALL values (when types are ignored)' do
|
||
organization = taxonomies(:organization1)
|
||
# ignore all types
|
||
organization.ignore_types = ["Domain", "Hostgroup", "Environment", "User", "Medium", "Subnet", "SmartProxy", "ConfigTemplate", "ComputeResource"]
|
||
organization.ignore_types = ["Domain", "Hostgroup", "Environment", "User", "Medium", "Subnet", "SmartProxy", "ConfigTemplate", "ComputeResource", "Realm"]
|
||
# run selected_ids method
|
||
selected_ids = organization.selected_ids
|
||
# should return all when type is ignored
|
||
... | ... | |
assert_equal selected_ids[:hostgroup_ids], Hostgroup.pluck(:id)
|
||
assert_equal selected_ids[:subnet_ids], Subnet.pluck(:id)
|
||
assert_equal selected_ids[:domain_ids], Domain.pluck(:id)
|
||
assert_equal selected_ids[:realm_ids], Realm.pluck(:id)
|
||
assert_equal selected_ids[:medium_ids], Medium.pluck(:id)
|
||
assert_equal selected_ids[:user_ids], User.pluck(:id)
|
||
assert_equal selected_ids[:smart_proxy_ids], SmartProxy.pluck(:id)
|
Also available in: Unified diff
fixes #1809 - foreman realm integration