diff options
author | Adam S <asa188@sfu.ca> | 2015-09-25 17:55:21 -0700 |
---|---|---|
committer | Adam S <asa188@sfu.ca> | 2015-09-25 17:55:21 -0700 |
commit | ce6e8679b68f984415adc90d74083fd787234709 (patch) | |
tree | 56fd33d1e930ea94bb2f2f8a01dbd4a1a31ad4bc /spec/unit/facter | |
parent | 4d1bca3359519e6303d9b3543c56426606c8eba3 (diff) | |
download | puppet-stdlib-ce6e8679b68f984415adc90d74083fd787234709.tar.gz puppet-stdlib-ce6e8679b68f984415adc90d74083fd787234709.tar.bz2 |
Add package_provider fact
This adds a package_provider fact for situations where we need to be
able to know the client's package provider in a simple way. Situations
such as: package { 'name': install_options => [] } As those tend to be
package provider specific options.
Diffstat (limited to 'spec/unit/facter')
-rw-r--r-- | spec/unit/facter/package_provider_spec.rb | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/spec/unit/facter/package_provider_spec.rb b/spec/unit/facter/package_provider_spec.rb new file mode 100644 index 0000000..d1aee94 --- /dev/null +++ b/spec/unit/facter/package_provider_spec.rb @@ -0,0 +1,37 @@ +#! /usr/bin/env ruby -S rspec +require 'spec_helper' +require 'puppet/type' +require 'puppet/type/package' + +describe 'package_provider', :type => :fact do + before { Facter.clear } + after { Facter.clear } + + context "darwin" do + it "should return pkgdmg" do + provider = Puppet::Type.type(:package).provider(:pkgdmg) + Puppet::Type.type(:package).stubs(:defaultprovider).returns provider + + expect(Facter.fact(:package_provider).value).to eq('pkgdmg') + end + end + + context "centos 7" do + it "should return yum" do + provider = Puppet::Type.type(:package).provider(:yum) + Puppet::Type.type(:package).stubs(:defaultprovider).returns provider + + expect(Facter.fact(:package_provider).value).to eq('yum') + end + end + + context "ubuntu" do + it "should return apt" do + provider = Puppet::Type.type(:package).provider(:apt) + Puppet::Type.type(:package).stubs(:defaultprovider).returns provider + + expect(Facter.fact(:package_provider).value).to eq('apt') + end + end + +end |