public void TestMachinePollStatus(string machineName)
        {
            var provider = _container.GetRequiredService <IHyperVProvider>();

            provider.Connect();

            IHyperVMachine machine = provider.GetMachineByName(machineName);

            HyperVStatus status = machine.GetStatus();

            Stopwatch s = new Stopwatch();

            s.Start();

            bool isReset = false;

            while (s.Elapsed.TotalSeconds < 15)
            {
                machine = provider.GetMachineByName(machineName);
                status  = machine.GetStatus();

                Debug.WriteLine("Machine Status is => " + status);

                if (s.Elapsed.TotalSeconds >= 1 && !isReset)
                {
                    machine.Reset();

                    isReset = true;
                }

                Thread.Sleep(1000);
            }

            s.Stop();
        }
        public void TestResetMachineByName(string machineName)
        {
            var provider = _container.GetRequiredService <IHyperVProvider>();

            provider.Connect();
            IHyperVMachine machine = provider.GetMachineByName(machineName);

            machine.Reset();
        }