-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathPhoneNumberLookupApiTest.java
More file actions
96 lines (82 loc) · 5.07 KB
/
PhoneNumberLookupApiTest.java
File metadata and controls
96 lines (82 loc) · 5.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package com.bandwidth.sdk.smoke;
import com.bandwidth.sdk.api.PhoneNumberLookupApi;
import com.bandwidth.sdk.ApiResponse;
import com.bandwidth.sdk.ApiException;
import com.bandwidth.sdk.ApiClient;
import com.bandwidth.sdk.model.AsyncLookupRequest;
import com.bandwidth.sdk.model.CompletedLookupStatusEnum;
import com.bandwidth.sdk.model.CreateAsyncBulkLookupResponse;
import com.bandwidth.sdk.model.CreateAsyncBulkLookupResponseData;
import com.bandwidth.sdk.model.CreateSyncLookupResponse;
import com.bandwidth.sdk.model.CreateSyncLookupResponseData;
import com.bandwidth.sdk.model.GetAsyncBulkLookupResponse;
import com.bandwidth.sdk.model.GetAsyncBulkLookupResponseData;
import com.bandwidth.sdk.model.InProgressLookupStatusEnum;
import com.bandwidth.sdk.model.LineTypeEnum;
import com.bandwidth.sdk.model.LinkSchema;
import com.bandwidth.sdk.model.LookupResult;
import com.bandwidth.sdk.model.SyncLookupRequest;
import org.junit.jupiter.api.Test;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.Matchers.is;
import static com.bandwidth.sdk.utils.TestingEnvironmentVariables.*;
@SuppressWarnings("null")
public class PhoneNumberLookupApiTest {
private static ApiClient oauthClient = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
private final PhoneNumberLookupApi api = new PhoneNumberLookupApi(oauthClient);
private final List<String> phoneNumbers = Arrays.asList(BW_NUMBER, VZW_NUMBER, ATT_NUMBER, T_MOBILE_NUMBER);
@Test
public void createSyncLookupTest() throws ApiException {
SyncLookupRequest lookupRequest = new SyncLookupRequest()
.phoneNumbers(phoneNumbers);
ApiResponse<CreateSyncLookupResponse> response = api.createSyncLookupWithHttpInfo(BW_ACCOUNT_ID, lookupRequest);
assertThat(response.getStatusCode(), is(200));
assertThat(response.getData(), instanceOf(CreateSyncLookupResponse.class));
CreateSyncLookupResponse lookupResponse = response.getData();
assertThat(lookupResponse.getLinks(), instanceOf(List.class));
assertThat(lookupResponse.getData(), instanceOf(CreateSyncLookupResponseData.class));
assertThat(lookupResponse.getData().getRequestId(), instanceOf(UUID.class));
assertThat(lookupResponse.getData().getStatus(), instanceOf(CompletedLookupStatusEnum.class));
assertThat(lookupResponse.getData().getResults(), instanceOf(List.class));
LookupResult firstResult = lookupResponse.getData().getResults().get(0);
assertThat(firstResult.getPhoneNumber(), instanceOf(String.class));
assertThat(firstResult.getLineType(), instanceOf(LineTypeEnum.class));
assertThat(firstResult.getVoiceProvider(), instanceOf(String.class));
assertThat(firstResult.getCountryCodeA3(), instanceOf(String.class));
}
@Test
public void createGetAsyncLookupTest() throws ApiException, InterruptedException {
AsyncLookupRequest lookupRequest = new AsyncLookupRequest()
.phoneNumbers(phoneNumbers);
ApiResponse<CreateAsyncBulkLookupResponse> createResponse
= api.createAsyncBulkLookupWithHttpInfo(BW_ACCOUNT_ID, lookupRequest);
assertThat(createResponse.getStatusCode(), is(202));
assertThat(createResponse.getData(), instanceOf(CreateAsyncBulkLookupResponse.class));
assertThat(createResponse.getData().getData(), instanceOf(CreateAsyncBulkLookupResponseData.class));
assertThat(createResponse.getData().getData().getRequestId(), instanceOf(UUID.class));
assertThat(createResponse.getData().getData().getStatus(), instanceOf(InProgressLookupStatusEnum.class));
UUID requestId = createResponse.getData().getData().getRequestId();
TimeUnit.SECONDS.sleep(60);
ApiResponse<GetAsyncBulkLookupResponse> getResponse
= api.getAsyncBulkLookupWithHttpInfo(BW_ACCOUNT_ID, requestId);
assertThat(getResponse.getStatusCode(), is(200));
assertThat(getResponse.getData(), instanceOf(GetAsyncBulkLookupResponse.class));
GetAsyncBulkLookupResponse lookupResponse = getResponse.getData();
assertThat(lookupResponse.getLinks(), instanceOf(List.class));
assertThat(lookupResponse.getData(), instanceOf(GetAsyncBulkLookupResponseData.class));
assertThat(lookupResponse.getData().getRequestId(), equalTo(requestId));
assertThat(lookupResponse.getData().getStatus(), instanceOf(InProgressLookupStatusEnum.class));
assertThat(lookupResponse.getData().getResults(), instanceOf(List.class));
LookupResult firstResult = lookupResponse.getData().getResults().get(0);
assertThat(firstResult.getPhoneNumber(), instanceOf(String.class));
assertThat(firstResult.getLineType(), instanceOf(LineTypeEnum.class));
assertThat(firstResult.getVoiceProvider(), instanceOf(String.class));
assertThat(firstResult.getCountryCodeA3(), instanceOf(String.class));
}
}