public async Task GetByIamportIdAsync_throws_IamportResponseException_when_response_code_is_not_success() { // arrange var expectedRequest = Guid.NewGuid().ToString(); var expectedResult = new IamportResponse <Payment> { Code = -1, HttpStatusCode = HttpStatusCode.InternalServerError, }; var client = GetMockClient(expectedResult); var sut = new PaymentsApi(client); // act/assert await Assert.ThrowsAsync <IamportResponseException>( () => sut.GetByIamportIdAsync(expectedRequest)); }
public async Task GetByIamportIdAsync_requests_proper_uri() { // arrange var expectedRequest = Guid.NewGuid().ToString(); var expectedResult = new IamportResponse <Payment> { HttpStatusCode = HttpStatusCode.OK, }; var expectedPath = $"payments/{expectedRequest}"; var client = GetMockClient(expectedResult); var sut = new PaymentsApi(client); // act var result = await sut.GetByIamportIdAsync(expectedRequest); // assert Mock.Get(client) .Verify(mocked => mocked.RequestAsync <object, Payment>( It.Is <IamportRequest>(req => req.ApiPathAndQueryString.EndsWith(expectedPath)))); }
public async Task GetByIamportIdAsync_GuardClause(string id) { var sut = new PaymentsApi(GetEmptyMockClient()); await Assert.ThrowsAsync <ArgumentNullException>( () => sut.GetByIamportIdAsync(id)); }