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); }
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); }