Sha256: 39dddc2a63c538e9c9c9573b108e0b175b16815201ee4f6fa77788792b5953aa

Contents?: true

Size: 1.2 KB

Versions: 40

Compression:

Stored size: 1.2 KB

Contents

require 'spec_helper'

module Beaker
  describe Solaris do
    let( :solaris) { Beaker::Solaris.new( @hosts, make_opts ) }

    before :each do
      @hosts = make_hosts()
      allow( File ).to receive( :exists? ).and_return( true )
      allow( YAML ).to receive( :load_file ).and_return( fog_file_contents )
      allow_any_instance_of( Host ).to receive( :exec ).and_return( true )
    end

    it "can provision a set of hosts" do
      vmpath = "rpoooool/zs"
      spath = "rpoooool/USER/z0"

      @hosts.each do |host|
        vm_name = host['vmname'] || host.name
        snapshot = host['snapshot']
        expect( Command ).to receive( :new ).with("sudo /sbin/zfs rollback -Rf #{vmpath}/#{vm_name}@#{snapshot}").once
        expect( Command ).to receive( :new ).with("sudo /sbin/zfs rollback -Rf #{vmpath}/#{vm_name}/#{spath}@#{snapshot}").once
        expect( Command ).to receive( :new ).with("sudo /sbin/zoneadm -z #{vm_name} boot").once
      end
      allow_any_instance_of(Host).to receive(:close)

      solaris.provision
    end

    it "does nothing for cleanup" do
      expect( Command ).to receive( :new ).never
      expect( Host ).to receive( :exec ).never

      solaris.cleanup
    end


  end

end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
beaker-2.35.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.34.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.33.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.32.1 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.32.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.31.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.30.1 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.30.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.29.1 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.29.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.28.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.27.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.26.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.25.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.24.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.23.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.22.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.21.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.20.0 spec/beaker/hypervisor/solaris_spec.rb
beaker-2.19.0 spec/beaker/hypervisor/solaris_spec.rb