public async Task GivenValidRequest_WhenEmployeeSalaryRecordDoesNotExist_ThrowsNotFoundOpenReddingException() { // Arrange var query = new RetrieveEmployeeSalaryQuery(44, TestUri); var handler = new RetrieveEmployeeSalaryQueryHandler(Context); // Act var result = await Should.ThrowAsync <OpenReddingApiException>(async() => await handler.Handle(query, CancellationToken.None)); // Assert result.ShouldNotBeNull(); result.ShouldBeOfType <OpenReddingApiException>(); result.StatusCode.ShouldBe(HttpStatusCode.NotFound); }
public async Task GivenValidRequest_WhenEmployeeSalaryRecordExists_ReturnsDetailViewModel() { // Arrange var query = new RetrieveEmployeeSalaryQuery(4, TestUri); var handler = new RetrieveEmployeeSalaryQueryHandler(Context); // Act var result = await handler.Handle(query, CancellationToken.None); // Assert result.ShouldNotBeNull(); result.ShouldBeOfType <EmployeeSalaryDetailViewModel>(); result.Employee.ShouldNotBeNull(); result.Employee.ShouldBeOfType <EmployeeSalaryDetailDto>(); result.Employee !.Id.ShouldBe(4); result.Employee.JobTitle.ShouldNotBeNull(); result.Employee.JobTitle.ShouldBe("Senior Software Engineer"); result.Employee.Name.ShouldNotBeNull(); result.Employee.Name.ShouldBe("Joey Mckenzie"); }