public void ToggleVMStatusTest()
 {
     VirtualMachineRepository target = new VirtualMachineRepository(); // TODO: Initialize to an appropriate value
     VirtualMachine vm = target.GetAllRegisteredVirtualMachines().GetEnumerator().Current;
     var service = new RegisteredVirtualMachineService(vm.ImagePathName);
     if (service.IsRunning())
     {
         int status = target.ToggleVMStatus(vm.VirtualMachineId);
         Assert.IsTrue(status == VirtualMachine.STOPPED || status == VirtualMachine.POWERINGOFF);
     }
     else
     {
         int status = target.ToggleVMStatus(vm.VirtualMachineId);
         Assert.IsTrue(status == VirtualMachine.RUNNING || status == VirtualMachine.POWERINGON);
     }
 }
        public int ToggleVMStatus(int id)
        {
            VirtualMachine vm = dataDB.VirtualMachines.Single(d => d.VirtualMachineId == id);
            var service = new RegisteredVirtualMachineService(vm.ImagePathName);

            if (service.IsRunning())
                PowerOff(vm, service);
            else
                PowerOn(vm, service);

            return vm.Status;
        }