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 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 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>())); }