summaryrefslogtreecommitdiffstats
path: root/spec/integration
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2008-10-17 09:01:04 -0500
committerLuke Kanies <luke@madstop.com>2008-10-17 09:01:04 -0500
commit8aee40de69e6fe8d67ab58a2e223443b15820584 (patch)
tree89e230df3b43302a542f2cb6869f63e2fb93f6d8 /spec/integration
parent1b517d2fb048603bd1743a662bde74e8ae4b13dc (diff)
parenta74ec60d33dee1c592ec858faeccc23d7a7b79f3 (diff)
Merge branch '0.24.x' Removed the 'after' blocks that call Type.clear,
since that method is deprecated. Conflicts: CHANGELOG bin/puppetca lib/puppet/file_serving/fileset.rb lib/puppet/network/xmlrpc/client.rb lib/puppet/type/file/selcontext.rb spec/unit/file_serving/metadata.rb spec/unit/type/file.rb
Diffstat (limited to 'spec/integration')
-rwxr-xr-xspec/integration/provider/package.rb26
-rwxr-xr-xspec/integration/reference/providers.rb17
2 files changed, 43 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
diff --git a/spec/integration/reference/providers.rb b/spec/integration/reference/providers.rb
new file mode 100755
index 000000000..79b6ce12d
--- /dev/null
+++ b/spec/integration/reference/providers.rb
@@ -0,0 +1,17 @@
+#!/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/util/reference'
+
+reference = Puppet::Util::Reference.reference(:providers)
+
+describe reference do
+ it "should exist" do
+ reference.should_not be_nil
+ end
+
+ it "should be able to be rendered as text" do
+ lambda { reference.to_text }.should_not raise_error
+ end
+end