コード例 #1
0
        public void Details_Tournament_ReturnTournamentID()
        {
            int tournamentID = 2;

            var tournaments = new Tournaments()
            {
                TournamentId       = 2,
                TournamentName     = "Tournament 2020",
                StartDate          = DateTime.Now,
                EndDate            = DateTime.Now.AddDays(5),
                TournamentLocation = "Belgrade"
            };

            _mockRepo.Setup(d => d.Details(tournamentID)).Returns(tournaments);

            var expectedModel = new Tournaments
            {
                TournamentId   = tournaments.TournamentId,
                TournamentName = tournaments.TournamentName,
                StartDate      = tournaments.StartDate,
                EndDate        = tournaments.EndDate
            };

            var actual = _controller.Details(tournamentID);

            var actualModel = actual.Model as Tournaments;

            Assert.Equal(actualModel.TournamentId, tournaments.TournamentId);
            Assert.Equal(actualModel.TournamentName, tournaments.TournamentName);
            Assert.Equal(actualModel.StartDate, tournaments.StartDate);
            Assert.Equal(actualModel.EndDate, tournaments.EndDate);
            Assert.Equal(actualModel.TournamentLocation, tournaments.TournamentLocation);
        }
コード例 #2
0
        public async void 大会の詳細画面を表示()
        {
            // Arrange
            var id = 000001;
            var holdingPeriodStartDate = new DateTime(2020, 6, 10);
            var holdingPeriodEndDate   = new DateTime(2020, 6, 20);
            var tournament             = new Tournament(
                new TournamentName("ジュニア選手権"),
                TournamentType.WithDraw,
                new RegistrationYear(new DateTime(2020, 4, 1)),
                TypeOfYear.Odd,
                new AggregationMonth(new DateTime(2020, 6, 1)),
                new List <TennisEvent>()
            {
                TennisEvent.FromId("1_1_1"), TennisEvent.FromId("1_1_2")
            },
                new HoldingPeriod(holdingPeriodStartDate, holdingPeriodEndDate),
                new List <HoldingDate>()
            {
                new HoldingDate(new DateTime(2020, 6, 12)), new HoldingDate(new DateTime(2020, 6, 13))
            },
                new Venue("日本テニスコート"),
                new EntryFee(100),
                MethodOfPayment.PrePayment,
                new ApplicationPeriod(new DateTime(2020, 5, 1), new DateTime(2020, 5, 31)),
                new Outline("大会名:ジュニア選手 権場所:日本テニスコート"),
                "メール件名",
                "メール本文",
                1);

            var holdingDates = new List <JsonHoldingDate>()
            {
                new JsonHoldingDate(new DateTime(2020, 03, 30), true)
            };
            var mockUseCase = new Mock <ITournamentUseCase>();

            mockUseCase.Setup(m => m.GetTournament(id))
            .ReturnsAsync(tournament)
            .Verifiable();
            mockUseCase.Setup(m => m.CreateHoldingDates(holdingPeriodStartDate, holdingPeriodEndDate))
            .Returns(holdingDates)
            .Verifiable();
            var controller = new TournamentsController(mockUseCase.Object);

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

            // Assert
            mockUseCase.Verify();
            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsAssignableFrom <DetailsViewModel>(viewResult.ViewData.Model);
        }