Exemple #1
0
        public async Task FizzBuzzController_ResultsWithValidModel_AwaitsLogger()
        {
            //arrange
            var sut = CreateSut();

            sut.ModelState.Clear();
            var isAwaited = false;

            UserInputLoggerMock
            .Setup(logger => logger.LogAsync(Convert.ToInt32(GeneratedMaxValue), GeneratedPageNumber))
            .Returns(() =>
                     Task
                     .Delay(TimeSpan.FromMilliseconds(100))
                     .ContinueWith(task => isAwaited = task.IsCompleted));

            //act
            await sut.Results(new FizzBuzzViewModel
            {
                MaxValue   = GeneratedMaxValue,
                PageNumber = GeneratedPageNumber
            });

            //assert
            isAwaited.Should().BeTrue();
        }
Exemple #2
0
        public void FizzBuzzController_ResultsWithLoggerThrowing_ThrowsSameException()
        {
            //arrange
            var exception = GenerateException();

            UserInputLoggerMock
            .Setup(logger => logger.LogAsync(It.IsAny <int>(), It.IsAny <int>()))
            .Throws(exception);
            var sut = CreateSut();

            //act
            Func <Task> act = () => sut.Results(new FizzBuzzViewModel
            {
                MaxValue   = GeneratedMaxValue,
                PageNumber = GeneratedPageNumber
            });

            //assert
            act
            .ShouldThrow <Exception>()
            .Which.Should().BeSameAs(exception);
        }