public async Task ListByCrew_WithCorrectId_ShouldReturnAthletes() { using (var context = provider.GetService <TimingSiteContext>()) using (var controller = new HeadRaceTimingSite.Api.Controllers.AthleteController(mapper, context)) { Crew dbCrew = new Crew { BroeCrewId = 1 }; dbCrew.Athletes.Add(new CrewAthlete { Athlete = new Athlete { MembershipNumber = "ABC123" } }); context.Crews.Add(dbCrew); context.SaveChanges(); var result = await controller.ListByCrew(1).ConfigureAwait(false); var okResult = result as OkObjectResult; Assert.IsNotNull(okResult, "Should be Ok"); Assert.AreEqual(200, okResult.StatusCode); List <HeadRaceTimingSite.Api.Resources.Athlete> athletes = okResult.Value as List <HeadRaceTimingSite.Api.Resources.Athlete>; Assert.IsNotNull(athletes, "Should be List<Athlete>"); Assert.AreEqual(1, athletes.Count); Assert.AreEqual("ABC123", athletes[0].MembershipNumber); } }
public async Task ListByCrew_WithIncorrectId_ShouldReturn404() { using (var context = provider.GetService <TimingSiteContext>()) using (var controller = new HeadRaceTimingSite.Api.Controllers.AthleteController(mapper, context)) { var result = await controller.ListByCrew(1).ConfigureAwait(false); var notFoundResult = result as NotFoundResult; Assert.IsNotNull(notFoundResult); Assert.AreEqual(404, notFoundResult.StatusCode); } }