Sha256: 7c48d5315fa757bcf607ebd94bd46adb395437d3758d9dced8cab61005907669

Contents?: true

Size: 1.61 KB

Versions: 35

Compression:

Stored size: 1.61 KB

Contents

#!/usr/bin/env rspec
require 'spec_helper'

provider_class = Puppet::Type.type(:zone).provider(:solaris)

describe provider_class do
  before do
    @resource = stub("resource", :name => "mypool")
    @resource.stubs(:[]).returns "shouldvalue"
    @provider = provider_class.new(@resource)
  end

  describe "when calling configure" do
    it "should add the create args to the create str" do
      @resource.stubs(:properties).returns([])
      @resource.stubs(:[]).with(:create_args).returns("create_args")
      @provider.expects(:setconfig).with("create -b create_args\nset zonepath=shouldvalue\ncommit\n")
      @provider.configure
    end
  end

  describe "when installing" do
    it "should call zoneadm" do
      @provider.expects(:zoneadm)
      @provider.install
    end

    describe "when cloning" do
      before { @resource.stubs(:[]).with(:clone).returns(:clone_argument) }

      it "sohuld clone with the resource's clone attribute" do
        @provider.expects(:zoneadm).with(:clone, :clone_argument)
        @provider.install
      end
    end

    describe "when not cloning" do
      before { @resource.stubs(:[]).with(:clone).returns(nil)}

      it "should just install if there are no install args" do
        @resource.stubs(:[]).with(:install_args).returns(nil)
        @provider.expects(:zoneadm).with(:install)
        @provider.install
      end

      it "should add the install args to the command if they exist" do
        @resource.stubs(:[]).with(:install_args).returns("install args")
        @provider.expects(:zoneadm).with(:install, ["install", "args"])
        @provider.install
      end
    end
  end

end

Version data entries

35 entries across 35 versions & 3 rubygems

Version Path
puppet-2.7.26 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.25 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.24 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.23 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.22 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.21 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.20 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.20.rc1 spec/unit/provider/zone/solaris_spec.rb
librarian-puppet-0.9.4 vendor/gems/ruby/1.8/gems/puppet-2.7.18/spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.19 spec/unit/provider/zone/solaris_spec.rb
supply_drop-0.11.0 examples/vendored-puppet/vendor/puppet-2.7.8/spec/unit/provider/zone/solaris_spec.rb
librarian-puppet-0.9.3 vendor/gems/ruby/1.8/gems/puppet-2.7.18/spec/unit/provider/zone/solaris_spec.rb
supply_drop-0.10.2 examples/vendored-puppet/vendor/puppet-2.7.8/spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.18 spec/unit/provider/zone/solaris_spec.rb
supply_drop-0.10.1 examples/vendored-puppet/vendor/puppet-2.7.8/spec/unit/provider/zone/solaris_spec.rb
supply_drop-0.10.0 examples/vendored-puppet/vendor/puppet-2.7.8/spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.17 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.16 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.14 spec/unit/provider/zone/solaris_spec.rb
puppet-2.7.13 spec/unit/provider/zone/solaris_spec.rb