public async Task RestoreAndUpdateAsyncTest() { await _restoreService.RestoreAndUpdateAsync(_backup); await AssertDatabaseMatchesBackupAsync(); var authenticators = await AuthenticatorRepository.GetAllAsync(); for (var i = 0; i < authenticators.Count; i++) { var authenticator = authenticators[i]; authenticator.Issuer = "test"; await AuthenticatorRepository.UpdateAsync(authenticator); } var categories = await CategoryRepository.GetAllAsync(); for (var i = 0; i < categories.Count; i++) { var category = categories[i]; category.Name = "test"; await CategoryRepository.UpdateAsync(category); } await _restoreService.RestoreAndUpdateAsync(_backup); authenticators = await AuthenticatorRepository.GetAllAsync(); Assert.True(authenticators.All(a => a.Issuer != "test")); categories = await CategoryRepository.GetAllAsync(); Assert.True(categories.All(a => a.Name != "test")); }
private async Task AssertDatabaseMatchesBackupAsync() { var authenticators = await AuthenticatorRepository.GetAllAsync(); Assert.False(_backup.Authenticators.Except(authenticators, new AuthenticatorComparer()).Any()); var categories = await CategoryRepository.GetAllAsync(); Assert.False(_backup.Categories.Except(categories, new CategoryComparer()).Any()); var authenticatorCategories = await AuthenticatorCategoryRepository.GetAllAsync(); Assert.False(_backup.AuthenticatorCategories .Except(authenticatorCategories, new AuthenticatorCategoryComparer()).Any()); var customIcons = await CustomIconRepository.GetAllAsync(); Assert.False(_backup.CustomIcons.Except(customIcons, new CustomIconComparer()).Any()); }