summaryrefslogtreecommitdiffstats
path: root/spec/integration/indirector
diff options
context:
space:
mode:
authorBrice Figureau <brice-puppet@daysofwonder.com>2009-07-09 20:59:41 +0200
committerBrice Figureau <brice-puppet@daysofwonder.com>2009-07-20 20:16:58 +0200
commitf2c55cc6b4dd6a4db307ea1c031120398fe5fc7e (patch)
treef2dce699e649148812e44711e4da3026c174f873 /spec/integration/indirector
parent8bbd8b4bb295fee7ad99f6137c9851528f1729cc (diff)
downloadpuppet-f2c55cc6b4dd6a4db307ea1c031120398fe5fc7e.tar.gz
puppet-f2c55cc6b4dd6a4db307ea1c031120398fe5fc7e.tar.xz
puppet-f2c55cc6b4dd6a4db307ea1c031120398fe5fc7e.zip
Fix #2378 and #2391 tests
Fix #2378 - Add some integration tests for catalog filtering Fix #2391 - Fix up some of the tests Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
Diffstat (limited to 'spec/integration/indirector')
-rwxr-xr-xspec/integration/indirector/catalog/compiler.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/spec/integration/indirector/catalog/compiler.rb b/spec/integration/indirector/catalog/compiler.rb
new file mode 100755
index 000000000..f3ace8d1b
--- /dev/null
+++ b/spec/integration/indirector/catalog/compiler.rb
@@ -0,0 +1,34 @@
+#!/usr/bin/env ruby
+
+Dir.chdir(File.dirname(__FILE__)) { (s = lambda { |f| File.exist?(f) ? require(f) : Dir.chdir("..") { s.call(f) } }).call("spec/spec_helper.rb") }
+
+require 'puppet/resource/catalog'
+
+Puppet::Resource::Catalog.indirection.terminus(:compiler)
+
+describe Puppet::Resource::Catalog::Compiler do
+ before do
+ @catalog = Puppet::Resource::Catalog.new
+
+ @one = Puppet::Resource.new(:file, "/one")
+ @one.exported = true
+
+ @two = Puppet::Resource.new(:file, "/two")
+ @catalog.add_resource(@one, @two)
+ end
+
+ after { Puppet.settings.clear }
+
+ it "should remove exported resources when filtering" do
+ Puppet::Resource::Catalog.indirection.terminus.filter(@catalog).resources.should == [ @two.ref ]
+ end
+
+ it "should filter out exported resources when finding a catalog" do
+ request = stub 'request', :name => "mynode"
+ Puppet::Resource::Catalog.indirection.terminus.stubs(:extract_facts_from_request)
+ Puppet::Resource::Catalog.indirection.terminus.stubs(:node_from_request)
+ Puppet::Resource::Catalog.indirection.terminus.stubs(:compile).returns(@catalog)
+
+ Puppet::Resource::Catalog.find(request).resources.should == [ @two.ref ]
+ end
+end