public void Remove_WithValidTest_ShouldCallService()
        {
            //Arrange
            var testModel = new InterviewerTestDetailsViewModel()
            {
                Id   = 1,
                Name = "Test 1",
                Url  = "https://www.mysite.bg/"
            };

            bool serviceCalled = false;

            var mockRepository = new Mock <IInterviewerTestsService>();

            mockRepository.Setup(service => service.Remove(1))
            .Callback(() => serviceCalled = true);

            var controller = new TestsController(mockRepository.Object);

            //Act
            var result = controller.Remove(1);

            //Assert
            Assert.IsTrue(serviceCalled);
        }
        public async Task Details_ShouldReturnTest()
        {
            //Arrange
            var testModel = new InterviewerTestDetailsViewModel()
            {
                Id   = 1,
                Name = "Test 1",
                Url  = "https://www.mysite.bg/"
            };

            bool serviceCalled = false;

            var mockRepository = new Mock <IInterviewerTestsService>();

            mockRepository.Setup(service => service.Details(It.IsAny <int>()))
            .ReturnsAsync(testModel)
            .Callback(() => serviceCalled = true);

            var controller = new TestsController(mockRepository.Object);

            //Act
            var result = await controller.Details(1);

            //Assert
            Assert.IsInstanceOfType(result, typeof(ViewResult));
            Assert.IsTrue(serviceCalled);
        }