summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavide Cavalca <dcavalca@fb.com>2015-12-14 17:15:21 -0800
committerDavide Cavalca <dcavalca@fb.com>2016-02-22 14:03:17 -0800
commit29f3b3912113e818a201d91e44dccdd63d09da2a (patch)
tree3fdfb5ebfed1930b12b00164992f5e4eac14c7c0
parent787c1c76db731040ad4f6ab60e92fa00f737f8d0 (diff)
downloadchef-29f3b3912113e818a201d91e44dccdd63d09da2a.tar.gz
initial attempt at spec update
-rw-r--r--spec/unit/provider/service/systemd_service_spec.rb33
1 files changed, 32 insertions, 1 deletions
diff --git a/spec/unit/provider/service/systemd_service_spec.rb b/spec/unit/provider/service/systemd_service_spec.rb
index b445d93aeb..cb2a15faf9 100644
--- a/spec/unit/provider/service/systemd_service_spec.rb
+++ b/spec/unit/provider/service/systemd_service_spec.rb
@@ -28,7 +28,7 @@ describe Chef::Provider::Service::Systemd do
let(:service_name) { "rsyslog.service" }
- let(:new_resource) { Chef::Resource::Service.new(service_name) }
+ let(:new_resource) { Chef::Resource::SystemdService.new(service_name) }
let(:provider) { Chef::Provider::Service::Systemd.new(new_resource, run_context) }
@@ -51,6 +51,7 @@ describe Chef::Provider::Service::Systemd do
before(:each) do
allow(provider).to receive(:is_active?).and_return(false)
allow(provider).to receive(:is_enabled?).and_return(false)
+ allow(provider).to receive(:is_masked?).and_return(false)
end
it "should create a current resource with the name of the new resource" do
@@ -127,6 +128,18 @@ describe Chef::Provider::Service::Systemd do
expect(current_resource.enabled).to be false
end
+ it "should set masked to true if the service is masked" do
+ allow(provider).to receive(:is_masked?).and_return(true)
+ provider.load_current_resource
+ expect(current_resource.masked).to be true
+ end
+
+ it "should set masked to false if the service is not masked" do
+ allow(provider).to receive(:is_masked?).and_return(false)
+ provider.load_current_resource
+ expect(current_resource.masked).to be false
+ end
+
it "should return the current resource" do
expect(provider.load_current_resource).to eql(current_resource)
end
@@ -239,6 +252,24 @@ describe Chef::Provider::Service::Systemd do
end
end
+ describe "mask and unmask service" do
+ before(:each) do
+ provider.current_resource = current_resource
+ current_resource.service_name(service_name)
+ allow(provider).to receive(:which).with("systemctl").and_return("#{systemctl_path}")
+ end
+
+ it "should call '#{systemctl_path} mask service_name' to mask the service" do
+ expect(provider).to receive(:shell_out!).with("#{systemctl_path} mask #{service_name}").and_return(shell_out_success)
+ provider.mask_service
+ end
+
+ it "should call '#{systemctl_path} unmask service_name' to unmask the service" do
+ expect(provider).to receive(:shell_out!).with("#{systemctl_path} unmask #{service_name}").and_return(shell_out_success)
+ provider.unmask_service
+ end
+ end
+
describe "is_active?" do
before(:each) do
provider.current_resource = current_resource