public void DeletePostByCloudId_WhenEmptyContext_ReturnsUnsuccessfulOperation() { // Arrange var postsCount = _appDbContext.Posts.Count(); var cloudId = 1; // Act var operationResult = _postManager.DeleteByCloudIdAsync(cloudId).GetAwaiter().GetResult(); var postsCountAfterOperation = _appDbContext.Posts.Count(); // Assert Assert.Equal(0, operationResult); Assert.Equal(postsCount, postsCountAfterOperation); }
/// <inheritdoc/> public async Task DeleteAsync() { _logger.LogInformation(SyncMessage.PostDeleteStart); var postsCloud = await _cloudManager.GetPosts().ToListAsync(); var postsApp = (await _postManager.GetAllAsync()).ToList(); var postsCloudIds = postsCloud.Select(p => p.Id); var postsAppIds = postsApp.Select(p => p.CloudId); var deleteIds = postsAppIds.Except(postsCloudIds); if (deleteIds.Any()) { foreach (var id in deleteIds) { await _postManager.DeleteByCloudIdAsync(id); } } _logger.LogInformation(SyncMessage.PostDeleteEnd); }