public async Task Delete_when_repository_Delete_returns_false_returns_NotFound()
        {
            var repository = new Mock <IStudyRepository>();
            var controller = new StudiesController(repository.Object);

            var result = await controller.Delete(42);

            Assert.IsType <NotFoundResult>(result);
        }
        public async Task Delete_calls_repository_Delete()
        {
            var repository = new Mock <IStudyRepository>();
            var controller = new StudiesController(repository.Object);

            await controller.Delete(42);

            repository.Verify(r => r.DeleteAsync(42), Times.Once);
        }
        public async Task Delete_when_repository_Delete_returns_true_returns_NoContent()
        {
            var repository = new Mock <IStudyRepository>();

            repository.Setup(r => r.DeleteAsync(42)).ReturnsAsync(true);
            var controller = new StudiesController(repository.Object);

            var result = await controller.Delete(42);

            Assert.IsType <NoContentResult>(result);
        }