Sha256: a0e8c91f176ece709958b14705c0f2866834f7a23fcc143f0f67955fdf2b4cfc

Contents?: true

Size: 1.27 KB

Versions: 42

Compression:

Stored size: 1.27 KB

Contents

require "test_helper"

class ClearSharedFoldersVMActionTest < Test::Unit::TestCase
  setup do
    @klass = Vagrant::Action::VM::ClearSharedFolders
    @app, @env = action_env

    @vm = mock("vm")
    @env["vm"] = @vm

    @internal_vm = mock("internal")
    @vm.stubs(:vm).returns(@internal_vm)

    @instance = @klass.new(@app, @env)
  end

  context "calling" do
    should "call the proper methods in sequence" do
      seq = sequence("seq")
      @instance.expects(:clear_shared_folders).once.in_sequence(seq)
      @app.expects(:call).with(@env).once
      @instance.call(@env)
    end
  end

  context "clearing shared folders" do
    setup do
      @shared_folder = mock("shared_folder")
      @shared_folders = [@shared_folder]
      @internal_vm.stubs(:shared_folders).returns(@shared_folders)
    end

    should "call destroy on each shared folder then reload" do
      destroy_seq = sequence("destroy")
      @shared_folders.each do |sf|
        sf.expects(:destroy).once.in_sequence(destroy_seq)
      end

      @vm.expects(:reload!).once.in_sequence(destroy_seq)
      @instance.clear_shared_folders
    end

    should "do nothing if no shared folders existed" do
      @shared_folders.clear
      @vm.expects(:reload!).never
      @instance.clear_shared_folders
    end
  end
end

Version data entries

42 entries across 42 versions & 4 rubygems

Version Path
vagrantup-0.7.8 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.7 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.6 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.5 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.4 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.3 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.2 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.1 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.7.0 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.9 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.8 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.7 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.6 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.5 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.4 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.3 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.2 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.1 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrantup-0.6.0 test/vagrant/action/vm/clear_shared_folders_test.rb
vagrant-0.7.8 test/vagrant/action/vm/clear_shared_folders_test.rb