summaryrefslogtreecommitdiffstats
path: root/spec/integration
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2008-10-08 21:16:26 -0500
committerLuke Kanies <luke@madstop.com>2008-10-08 21:16:26 -0500
commit54abe7084da32570f1d4b8522d9d3232c4313d4e (patch)
treef3788fe60db5c826ee17ee41765ae446a90476a5 /spec/integration
parent85d3ae02fb4707f1dd566019221195e431365c2f (diff)
downloadpuppet-54abe7084da32570f1d4b8522d9d3232c4313d4e.tar.gz
puppet-54abe7084da32570f1d4b8522d9d3232c4313d4e.tar.xz
puppet-54abe7084da32570f1d4b8522d9d3232c4313d4e.zip
Moving some test/ package tests to rspec integration tests
and disabling a gem test that hangs forever for me. Signed-off-by: Luke Kanies <luke@madstop.com>
Diffstat (limited to 'spec/integration')
-rwxr-xr-xspec/integration/provider/package.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/spec/integration/provider/package.rb b/spec/integration/provider/package.rb
new file mode 100755
index 000000000..24a196266
--- /dev/null
+++ b/spec/integration/provider/package.rb
@@ -0,0 +1,26 @@
+#!/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") }
+
+describe "Package Provider" do
+ Puppet::Type.type(:package).providers.each do |name|
+ provider = Puppet::Type.type(:package).provider(name)
+
+ describe name do
+ confine "Provider %s is not suitable" % name => provider.suitable?
+
+ it "should fail when asked to install an invalid package" do
+ pending("This test hangs forever with recent versions of RubyGems") if provider.name == :gem
+ pkg = Puppet::Type.newpackage :name => "nosuch%s" % provider.name.to_s, :provider => provider.name
+ lambda { pkg.provider.install }.should raise_error
+ end
+
+ it "should be able to get a list of existing packages" do
+ provider.instances.each do |package|
+ package.should be_instance_of(provider)
+ package.properties[:provider].should == provider.name
+ end
+ end
+ end
+ end
+end