Refactor systemd facts (#12)
[puppet_systemd.git] / spec / unit / facter / systemd_version_spec.rb
1 require "spec_helper"
2
3 describe Facter::Util::Fact do
4   before {
5     Facter.clear
6   }
7
8   describe "systemd_version" do
9     context 'returns version when systemd fact present' do
10       before do
11         Facter.fact(:systemd).stubs(:value).returns(true)
12       end
13       let(:facts) { {:systemd => true} }
14       it do
15         Facter::Util::Resolution.expects(:exec).with("systemctl --version | awk '/systemd/{ print $2 }'").returns('229')
16         expect(Facter.value(:systemd_version)).to eq('229')
17       end
18     end
19     context 'returns nil when systemd fact not present' do
20       before do
21         Facter.fact(:systemd).stubs(:value).returns(false)
22       end
23       let(:facts) { {:systemd => false } }
24       it do
25         Facter::Util::Resolution.stubs(:exec)
26         Facter::Util::Resolution.expects(:exec).with("systemctl --version | awk '/systemd/{ print $2 }'").never
27         expect(Facter.value(:systemd_version)).to eq(nil)
28       end
29     end
30   end
31 end