public void FindHome()
        {
            _svc.MockAtHome  = false;
            _svc.MockAzimuth = 270.0;

            _mgr.FindHomePosition();

            Thread.Sleep(100);

            Assert.IsTrue(_mgr.Status.Slewing, "The dome has not started slewing to Home!");

            while (_mgr.Status.Slewing)
            {
                Thread.Sleep(100);
            }

            Assert.IsFalse(_mgr.Status.Slewing);
            Assert.IsTrue(_mgr.Status.AtHome);
            Assert.AreEqual(_svc.HomeAzimuth, _mgr.Azimuth);
        }
Example #2
0
        public void FindHome()
        {
            _svc.MockAtHome  = false;
            _svc.MockAzimuth = 270.0;

            _mgr.FindHomePosition();

            Assert.IsTrue(_mgr.Status.Slewing, "The dome has not started slewing to Home!");

            DateTime         timeoutTime = DateTime.Now.AddMinutes(1.0);
            bool             timedout    = false;
            DevHubDomeStatus sts         = _mgr.Status;

            while (!timedout)
            {
                if (!_mgr.Status.Slewing && _mgr.Status.AtHome)
                {
                    break;
                }
                else
                {
                    if (DateTime.Now > timeoutTime)
                    {
                        timedout = true;
                    }
                    else
                    {
                        Thread.Sleep(500);

                        sts = _mgr.Status;
                    }
                }
            }

            Assert.IsFalse(timedout);
            Assert.IsFalse(sts.Slewing);
            Assert.IsTrue(sts.AtHome);
            Assert.AreEqual(_svc.HomeAzimuth, _mgr.Azimuth);
        }