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); }
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>())); }
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); }
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>())); }
public void ManuallyCreatingEntryWorks() { Target.CreateEntryManual.Execute(null); NavigatorMock.Verify(d => d.Navigate <AddGeneratorViewModel>(null, It.IsAny <CancellationToken>())); }