Sha256: d5a00c6605ef8f8a3db824416e2c4c9490050fac91b02392ef25e2ce990488c9

Contents?: true

Size: 1.28 KB

Versions: 7

Compression:

Stored size: 1.28 KB

Contents

#! /usr/bin/env ruby
#
# Unit testing for the RedHat service Provider
#
require 'spec_helper'

provider_class = Puppet::Type.type(:service).provider(:systemd)

describe provider_class do
  before :each do
    @class = Puppet::Type.type(:service).provider(:redhat)
    @resource = stub 'resource'
    @resource.stubs(:[]).returns(nil)
    @resource.stubs(:[]).with(:name).returns "myservice.service"
    @provider = provider_class.new
    @resource.stubs(:provider).returns @provider
    @provider.resource = @resource
  end

  osfamily = [ 'redhat', 'suse' ]

  osfamily.each do |osfamily|
    it "should be the default provider on #{osfamily}" do
      pending "This test is pending the change in RedHat-related Linuxes to systemd for service management"
    end
  end

  [:enabled?, :enable, :disable, :start, :stop, :status, :restart].each do |method|
    it "should have a #{method} method" do
      @provider.should respond_to(method)
    end
  end


  it 'should return resources from self.instances' do
    provider_class.expects(:systemctl).with('list-units', '--full', '--all',  '--no-pager').returns(
      "my_service loaded active running\nmy_other_service loaded active running"
    )
    provider_class.instances.map {|provider| provider.name}.should =~ ["my_service","my_other_service"]
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
puppet-3.0.2 spec/unit/provider/service/systemd_spec.rb
puppet-3.0.2.rc3 spec/unit/provider/service/systemd_spec.rb
puppet-3.0.2.rc2 spec/unit/provider/service/systemd_spec.rb
puppet-3.0.2.rc1 spec/unit/provider/service/systemd_spec.rb
puppet-3.0.1 spec/unit/provider/service/systemd_spec.rb
puppet-3.0.1.rc1 spec/unit/provider/service/systemd_spec.rb
puppet-3.0.0 spec/unit/provider/service/systemd_spec.rb