public async Task PostAsync_WhenSendValidCompanyJson_ReturnsOk() { // Arrange // Act var result = await _client.PostAsync(_company); // Assert Assert.NotNull(result); Assert.Equal(ResultStatusCode.OK, result.Status); ValidateHelper.ValidateCompany(_company, result.ValueAsSuccess); }
public async Task PostAsync_WhenRequestTimeout_ReturnsTimeout() { // Arrange var mockHttp = TestHelper.CreateMockHttp(HttpMethod.Post, httpStatusCode: HttpStatusCode.RequestTimeout); var companyClient = new CompanyClient(TestHelper.apiKey, mockHttp); // Act var result = await companyClient.PostAsync(_company, CancellationToken.None); // Assert Assert.NotNull(result); Assert.Equal(ResultStatusCode.TimedOut, result.Status); }
public async Task PostAsync_WhenSendInvalidApiKey_ReturnsUnauthorized() { // Arrange var mockHttp = TestHelper.CreateMockHttp(HttpMethod.Post, httpStatusCode: HttpStatusCode.Unauthorized); var companyClient = new CompanyClient("InvalidApiKey", mockHttp); // Act var result = await companyClient.PostAsync(_company, CancellationToken.None); // Assert Assert.NotNull(result); Assert.Equal(ResultStatusCode.Unauthorized, result.Status); }
public async Task PostAsync_WhenHttpStatusCodeIsUnexpected_ReturnsError(HttpStatusCode status) { // Arrange var mockHttp = TestHelper.CreateMockHttp(HttpMethod.Post, httpStatusCode: status); var companyClient = new CompanyClient(TestHelper.apiKey, mockHttp); // Act var result = await companyClient.PostAsync(_company, CancellationToken.None); // Assert Assert.NotNull(result); Assert.Equal(ResultStatusCode.Error, result.Status); }
public async Task PostAsync_WhenRequestResponseReturnNull_ReturnsError() { // Arrange var mockHttp = TestHelper.CreateMockHttpGet("testToException"); var companyClient = new CompanyClient(TestHelper.apiKey, mockHttp.Object); // Act var result = await companyClient.PostAsync(_company, CancellationToken.None); // Assert Assert.NotNull(result); Assert.Equal(ResultStatusCode.Error, result.Status); Assert.Equal("Object reference not set to an instance of an object.", result.Value.ToString()); }
public async Task PostAsync_WhenSendValidJson_ReturnsOk() { // Arrange var mockHttp = TestHelper.CreateMockHttp(HttpMethod.Post, _companyReturn); var companyClient = new CompanyClient(TestHelper.apiKey, mockHttp); // Act var result = await companyClient.PostAsync(_company, CancellationToken.None); // Assert Assert.NotNull(result); Assert.Equal(ResultStatusCode.OK, result.Status); ValidateHelper.ValidateCompany(_company, result.ValueAsSuccess); }