test/vagrant/commands/up_test.rb in vagrant-0.3.4 vs test/vagrant/commands/up_test.rb in vagrant-0.4.0

- old
+ new

@@ -4,38 +4,44 @@ setup do @klass = Vagrant::Commands::Up @env = mock_environment @instance = @klass.new(@env) - - @persisted_vm = mock("persisted_vm") - @persisted_vm.stubs(:execute!) end context "executing" do + should "call all or single for the method" do + @instance.expects(:all_or_single).with([], :up) + @instance.execute + end + end + + context "upping a single VM" do setup do - @new_vm = mock("vm") - @new_vm.stubs(:execute!) + @vm = mock("vm") + @vm.stubs(:env).returns(@env) - @env.stubs(:vm).returns(nil) - @env.stubs(:require_box) - @env.stubs(:create_vm).returns(@new_vm) + @vms = {:foo => @vm} + @env.stubs(:vms).returns(@vms) end - should "require a box" do - @env.expects(:require_box).once - @instance.execute + should "error and exit if the VM doesn't exist" do + @env.stubs(:vms).returns({}) + @instance.expects(:error_and_exit).with(:unknown_vm, :vm => :foo).once + @instance.up_single(:foo) end - should "call the up action on VM if it doesn't exist" do - @new_vm.expects(:execute!).with(Vagrant::Actions::VM::Up).once - @instance.execute + should "start created VMs" do + @vm.stubs(:created?).returns(true) + @vm.expects(:start).once + @instance.up_single(:foo) end - should "call start on the persisted vm if it exists" do - @env.stubs(:vm).returns(@persisted_vm) - @persisted_vm.expects(:start).once - @env.expects(:create_vm).never - @instance.execute + should "up non-created VMs" do + @vm.stubs(:created?).returns(false) + @vm.env.expects(:require_box).once + @vm.expects(:up).once + @vm.expects(:start).never + @instance.up_single(:foo) end end end