public void ValidNumbers(int godNumber) { // Arrange var request = new GetSubmissions { Page = godNumber }; // Act var result = _validator.TestValidate(request); // Assert result.ShouldNotHaveAnyValidationErrors(); }
public void InvalidNumbers(int badNumber) { // Arrange var request = new GetSubmissions { Page = badNumber }; // Act var result = _validator.TestValidate(request); // Assert result.ShouldHaveValidationErrorFor(x => x.Page); }
public async Task GetSubmissions() { // Arrange var responses = _fixture.CreateMany <Contestant>(13).ToList(); var expectedResponses = responses.Select(x => ContestantVM.Create(x)); var request = new GetSubmissions { Page = 1 }; _repoMock.Setup(x => x.GetSubmissionsPage(request.Page)).ReturnsAsync(responses); var handler = new GetSubmissionsHandler(_repoMock.Object); // Act var response = await handler.Handle(request); // Assert response.Submissions.Should().BeEquivalentTo(expectedResponses); }
public async Task GetSubmissions_HasNoSubmissions_Produces200() { // Arrange var expectedStatusCode = (int)HttpStatusCode.OK; var request = new GetSubmissions { Page = 1 }; var mediatorResponse = new GetSubmissionsResponse(request.Page, 1); _mediatorMock.Setup(x => x.Send(request, default)).ReturnsAsync(mediatorResponse); var controller = new CompetitionController(_mediatorMock.Object); // Act var response = await controller.GetSubmissions(request); var actualResponse = response as OkObjectResult; // Assert actualResponse.StatusCode.Should().Be(expectedStatusCode); }
public async Task GetSubmissions_CallsDependencyWithCorrectParameter() { // Arrange var responses = _fixture.CreateMany <Contestant>(2).ToList(); int parameter = default; var request = new GetSubmissions { Page = 42 }; _repoMock.Setup(x => x.GetSubmissionsPage(request.Page)) .Callback <int>((i) => parameter = i) .ReturnsAsync(responses); var handler = new GetSubmissionsHandler(_repoMock.Object); // Act var response = await handler.Handle(request); // Assert parameter.Should().Be(request.Page); }
public async Task <IActionResult> GetSubmissions([FromQuery] GetSubmissions request) { var response = await _mediator.Send(request); return(Ok(response)); }