public async Task HandleAsyncNotFoundTest(int totalItems, int requestId)
        {
            await PopulateTodoItems(totalItems);

            var handler = new DeleteTodoItemRequestHandler(Context);

            var request = new DeleteTodoItemRequest {
                Id = requestId
            };
            var response = await handler.HandleAsync(request);

            Assert.IsNotNull(response);
            Assert.AreEqual(1, response.Notifications.Count);

            var notification = response.Notifications.Single();

            AssertNotFoundNotification(requestId, notification);
        }
        public async Task HandleAsyncTest(int totalItems, int requestId)
        {
            await PopulateTodoItems(totalItems);

            var todoItemBeforeDelete = await GetTodoItem(requestId);

            var handler = new DeleteTodoItemRequestHandler(Context);

            var request = new DeleteTodoItemRequest {
                Id = requestId
            };
            var response = await handler.HandleAsync(request);

            var todoItemAfterDelete = await GetTodoItem(requestId);

            Assert.IsNotNull(todoItemBeforeDelete);
            Assert.IsNull(todoItemAfterDelete);

            Assert.IsNotNull(response);
            Assert.AreEqual(0, response.Notifications.Count);
        }