Пример #1
0
        public void ReverseAfterStoppingTest()
        {
            var navigatorMock        = new NavigatorMock();
            var inputMock            = new InputMock();
            var obstacleDetectorMock = new ObstacleDetectorMock();
            var vehicleMock          = new VehicleMock();

            navigatorMock.DirectionToReturn = new Vector(1, 0);
            var driver = new Skywalker.Driver.Driver(inputMock, vehicleMock, navigatorMock);

            driver.Start();
            Thread.Sleep(100);

            Assert.IsTrue((int)vehicleMock.SpeedSetTo == 100);

            obstacleDetectorMock.FireObjectDetection();
            Thread.Sleep(100);

            Assert.IsTrue((int)vehicleMock.SpeedSetTo == 0);

            navigatorMock.DirectionToReturn = new Vector(0, 0);
            Thread.Sleep(100);
            navigatorMock.DirectionToReturn = new Vector(0, -1);
            Thread.Sleep(100);
            Assert.IsTrue((int)vehicleMock.SpeedSetTo == 100);
            Assert.IsTrue(vehicleMock.RotationSetTo.Y > 1 - 0.001 &&
                          vehicleMock.RotationSetTo.Y < 1 + 0.001);
        }
Пример #2
0
        public async Task SelectionWorks()
        {
            Target.ViewAppearing();
            await Target.DataLoadedTCS.Task;

            var selectedItem = Target.Items.First();

            Target.ItemClicked.Execute(selectedItem);
            NavigatorMock.Verify(d => d.Navigate <DisplayGeneratorViewModel, OTPGenerator>(selectedItem.Generator, null, It.IsAny <CancellationToken>()));
        }
        public async void DeletingWorks()
        {
            var generator = CreateOTPGenerator(2);

            Target.Prepare(generator);

            await QRGenerationTCS.Task;

            Assert.True(Target.DeleteGenerator.CanExecute(null));
            Target.DeleteGenerator.Execute(null);

            DataStoreMock.Verify(d => d.DeleteAsync(generator));
            NavigatorMock.Verify(d => d.Close(Target, It.IsAny <CancellationToken>()));
        }
Пример #4
0
        public void StopOnObjectDetectionTest()
        {
            var navigatorMock        = new NavigatorMock();
            var inputMock            = new InputMock();
            var obstacleDetectorMock = new ObstacleDetectorMock();
            var vehicleMock          = new VehicleMock();

            navigatorMock.DirectionToReturn = new Vector(0, 0);
            var driver = new Skywalker.Driver.Driver(inputMock, vehicleMock, navigatorMock);

            driver.Start();
            Thread.Sleep(100);

            Assert.IsTrue((int)vehicleMock.SpeedSetTo == 100);

            obstacleDetectorMock.FireObjectDetection();
            Thread.Sleep(100);

            Assert.IsTrue((int)vehicleMock.SpeedSetTo == 0);
        }
        public void CreationWorks()
        {
            var generator = CreateOTPGenerator(1);

            Target.Label          = generator.Label;
            Target.Issuer         = generator.Issuer;
            Target.SecretBase32   = generator.SecretBase32;
            Target.AllowExporting = !AddGeneratorViewModel.AllowExportingDefault;

            Target.AddGenerator.Execute(null);

            DataStoreMock.Verify(d => d.InsertOrReplaceAsync(It.Is <OTPGenerator>(
                                                                 e => e.Label == generator.Label && e.Issuer == generator.Issuer &&
                                                                 e.SecretBase32 == generator.SecretBase32 && e.AllowExporting == !AddGeneratorViewModel.AllowExportingDefault)));
            NavigatorMock.Verify(d => d.Close(Target, It.IsAny <CancellationToken>()));

            Assert.Empty(Target.Label);
            Assert.Empty(Target.SecretBase32);
            Assert.Empty(Target.Issuer);
            Assert.Equal(AddGeneratorViewModel.AllowExportingDefault, Target.AllowExporting);
        }
Пример #6
0
        public void TurningTest()
        {
            var navigatorMock        = new NavigatorMock();
            var inputMock            = new InputMock();
            var obstacleDetectorMock = new ObstacleDetectorMock();
            var vehicleMock          = new VehicleMock();

            navigatorMock.DirectionToReturn = new Vector(1, 0);
            var driver = new Skywalker.Driver.Driver(inputMock, vehicleMock, navigatorMock);

            driver.Start();
            Thread.Sleep(100);

            Assert.IsTrue(vehicleMock.RotationSetTo.X > 1 - 0.001 &&
                          vehicleMock.RotationSetTo.X < 1 + 0.001);

            navigatorMock.DirectionToReturn = new Vector(-1, 0);;
            Thread.Sleep(100);

            Assert.IsTrue(vehicleMock.RotationSetTo.X > -1 - 0.001 &&
                          vehicleMock.RotationSetTo.X < -1 + 0.001);
        }
 public void CancelingWorks()
 {
     Target.Cancel.Execute(null);
     DataStoreMock.Verify(d => d.InsertOrReplaceAsync(It.IsAny <OTPGenerator>()), Times.Never());
     NavigatorMock.Verify(d => d.Close(Target, It.IsAny <CancellationToken>()));
 }
Пример #8
0
        public void ManuallyCreatingEntryWorks()
        {
            Target.CreateEntryManual.Execute(null);

            NavigatorMock.Verify(d => d.Navigate <AddGeneratorViewModel>(null, It.IsAny <CancellationToken>()));
        }