Example #1
0
        public async Task ReturnCorrectViewModel_WhenCalled()
        {
            // Arrange
            Mock <ITournamentService> tournamentServiceMock = new Mock <ITournamentService>();
            Mock <IPDFService>        pDFServiceMock        = new Mock <IPDFService>();
            Mock <IMemoryCache>       memoryCacheMock       = new Mock <IMemoryCache>();

            string validId = string.Empty;

            Tournament validTournamentResult = new Tournament();

            tournamentServiceMock.Setup(mock => mock.FindAsync(validId))
            .Returns(Task.FromResult(validTournamentResult));

            TournamentController SUT = new TournamentController(
                tournamentServiceMock.Object,
                pDFServiceMock.Object,
                memoryCacheMock.Object);

            // Act
            var result = await SUT.Details(validId) as ViewResult;

            // Assert
            Assert.IsInstanceOfType(result.Model, typeof(TournamentDetailsViewModel));
        }
Example #2
0
        public async Task CallFindAsync_WhenCalled()
        {
            // Arrange
            Mock <ITournamentService> tournamentServiceMock = new Mock <ITournamentService>();
            Mock <IPDFService>        pDFServiceMock        = new Mock <IPDFService>();
            Mock <IMemoryCache>       memoryCacheMock       = new Mock <IMemoryCache>();

            string validId = string.Empty;

            Tournament validTournamentResult = new Tournament();

            tournamentServiceMock.Setup(mock => mock.FindAsync(validId))
            .Returns(Task.FromResult(validTournamentResult));

            TournamentController SUT = new TournamentController(
                tournamentServiceMock.Object,
                pDFServiceMock.Object,
                memoryCacheMock.Object);

            // Act
            await SUT.Details(validId);

            // Assert
            tournamentServiceMock.Verify(mock => mock.FindAsync(validId), Times.Once);
        }
        public void CallGetTournamentByIdOnce()
        {
            // Arrange
            var expectedTournament = new Tournament
            {
                Id        = Guid.NewGuid(),
                Name      = "Test name",
                Place     = "Test place",
                StartDate = DateTime.Now.Add(new TimeSpan(1, 0, 0, 0, 0)),
                EndDate   = DateTime.Now.Add(new TimeSpan(2, 0, 0, 0, 0)),
                CountryId = Guid.NewGuid()
            };

            var tournamentServiceMock = new Mock <ITournamentService>();

            tournamentServiceMock.Setup(x => x.GetTournamentById(expectedTournament.Id)).Returns(expectedTournament);

            var divisionServiceMock = new Mock <IDivisionService>();

            var controller = new TournamentController(tournamentServiceMock.Object, divisionServiceMock.Object);

            // Act
            controller.Details(expectedTournament.Id);

            // Assert
            tournamentServiceMock.Verify(x => x.GetTournamentById(expectedTournament.Id), Times.Once);
        }
Example #4
0
        public async Task ThrowApplicationException_WhenPassedNullId()
        {
            // Arrange
            Mock <ITournamentService> tournamentServiceMock = new Mock <ITournamentService>();
            Mock <IPDFService>        pDFServiceMock        = new Mock <IPDFService>();
            Mock <IMemoryCache>       memoryCacheMock       = new Mock <IMemoryCache>();

            string invalidId = null;

            Tournament validTournamentResult = new Tournament();

            tournamentServiceMock.Setup(mock => mock.FindAsync(invalidId))
            .Returns(Task.FromResult(validTournamentResult));

            TournamentController SUT = new TournamentController(
                tournamentServiceMock.Object,
                pDFServiceMock.Object,
                memoryCacheMock.Object);

            // Act & Assert
            await Assert.ThrowsExceptionAsync <ApplicationException>(() =>
                                                                     SUT.Details(invalidId));
        }