public async Task DeleteSampleShouldDeleteSample()
        {
            var sample = new Sample {
                Id = 1
            };

            _projectBLMock.Setup(x => x.DeleteSampleAsync(It.IsAny <Sample>())).Returns(Task.FromResult <Sample>(sample));
            var sampleController = new SampleController(_projectBLMock.Object);
            var result           = await sampleController.DeleteSampleAsync(sample.Id);

            Assert.IsAssignableFrom <NoContentResult>(result);
            _projectBLMock.Verify(x => x.DeleteSampleAsync((It.IsAny <Sample>())));
        }
        public async Task DeleteSampleAsync_ShouldReturnStatusCode500_WhenSampleIsInvalid()
        {
            //arrange
            int    id     = -2;
            Sample sample = null;

            _projectBLMock.Setup(i => i.DeleteSampleAsync(sample)).Throws(new Exception());
            SampleController sampleController = new SampleController(_projectBLMock.Object);

            //act
            var result = await sampleController.DeleteSampleAsync(id);

            //assert
            Assert.IsType <StatusCodeResult>(result);
            Assert.Equal(500, ((StatusCodeResult)result).StatusCode);
        }