Skip to content

Commit a6989fc

Browse files
committed
api unit test
1 parent b60395e commit a6989fc

File tree

1 file changed

+59
-24
lines changed

1 file changed

+59
-24
lines changed

src/test/java/com/bandwidth/sdk/unit/api/MultiChannelApiTest.java

Lines changed: 59 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,46 @@
66
import com.bandwidth.sdk.Configuration;
77
import com.bandwidth.sdk.api.MultiChannelApi;
88
import com.bandwidth.sdk.auth.HttpBasicAuth;
9-
// import com.bandwidth.sdk.model.MultiChannelChannelListObject;
10-
// import com.bandwidth.sdk.model.MultiChannelChannelListObjectContent;
9+
import com.bandwidth.sdk.model.CreateMultiChannelMessageResponse;
10+
import com.bandwidth.sdk.model.MessageDirectionEnum;
11+
import com.bandwidth.sdk.model.MmsMessageContent;
12+
import com.bandwidth.sdk.model.MmsMessageContentFile;
13+
import com.bandwidth.sdk.model.MultiChannelAction;
14+
import com.bandwidth.sdk.model.MultiChannelChannelListMMSObject;
15+
import com.bandwidth.sdk.model.MultiChannelChannelListMMSResponseObject;
16+
import com.bandwidth.sdk.model.MultiChannelChannelListRBMObject;
17+
import com.bandwidth.sdk.model.MultiChannelChannelListRBMObjectAllOfContent;
18+
import com.bandwidth.sdk.model.MultiChannelChannelListRBMResponseObject;
19+
import com.bandwidth.sdk.model.MultiChannelChannelListRequestObject;
20+
import com.bandwidth.sdk.model.MultiChannelChannelListResponseObject;
21+
import com.bandwidth.sdk.model.MultiChannelChannelListSMSObject;
22+
import com.bandwidth.sdk.model.MultiChannelChannelListSMSResponseObject;
1123
import com.bandwidth.sdk.model.MultiChannelMessageChannelEnum;
1224
import com.bandwidth.sdk.model.MultiChannelMessageRequest;
25+
import com.bandwidth.sdk.model.MultiChannelMessageResponseData;
1326
import com.bandwidth.sdk.model.PriorityEnum;
27+
import com.bandwidth.sdk.model.RbmActionDial;
28+
import com.bandwidth.sdk.model.RbmActionTypeEnum;
29+
import com.bandwidth.sdk.model.RbmMessageContentText;
1430
import com.bandwidth.sdk.model.SmsMessageContent;
1531

1632
import org.junit.jupiter.api.BeforeAll;
17-
import org.junit.jupiter.api.Disabled;
1833
import org.junit.jupiter.api.Test;
1934

35+
import java.net.URI;
2036
import java.time.OffsetDateTime;
37+
import java.util.Arrays;
38+
import java.util.List;
39+
import java.util.Set;
2140

2241
import static com.bandwidth.sdk.utils.TestingEnvironmentVariables.*;
2342
import static org.hamcrest.MatcherAssert.assertThat;
43+
import static org.mockito.ArgumentMatchers.contains;
44+
import static org.hamcrest.CoreMatchers.equalTo;
45+
import static org.hamcrest.CoreMatchers.instanceOf;
2446
import static org.hamcrest.CoreMatchers.is;
2547

48+
@SuppressWarnings("null")
2649
public class MultiChannelApiTest {
2750
private static ApiClient defaultClient = Configuration.getDefaultApiClient();
2851
private static HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
@@ -35,26 +58,38 @@ public static void setUp() {
3558
api.setCustomBaseUrl("http://127.0.0.1:4010");
3659
}
3760

38-
// @Test
39-
// @Disabled // skip because prism can't handle a oneOf with differing required fields
40-
// public void createMultiChannelMessageTest() throws ApiException {
41-
// MultiChannelChannelListObject channelListObject = new MultiChannelChannelListObject()
42-
// .from(BW_NUMBER)
43-
// .applicationId(BW_MESSAGING_APPLICATION_ID)
44-
// .channel(MultiChannelMessageChannelEnum.SMS)
45-
// .content(new MultiChannelChannelListObjectContent(new SmsMessageContent()
46-
// .text("Hello World!")));
47-
// MultiChannelMessageRequest multiChannelMessageRequest = new MultiChannelMessageRequest()
48-
// .to(USER_NUMBER)
49-
// .tag("tag")
50-
// .priority(PriorityEnum.DEFAULT)
51-
// .expiration(OffsetDateTime.now());
52-
53-
// multiChannelMessageRequest.addChannelListItem(channelListObject);
54-
55-
// ApiResponse response =
56-
// api.createMultiChannelMessageWithHttpInfo(BW_ACCOUNT_ID, multiChannelMessageRequest);
57-
// assertThat(response.getStatusCode(), is(202));
58-
// }
61+
@Test
62+
public void createMultiChannelMessageTest() throws ApiException {
63+
MultiChannelChannelListRequestObject channelListSMSObject = new MultiChannelChannelListRequestObject(
64+
new MultiChannelChannelListSMSObject()
65+
.from(BW_NUMBER)
66+
.applicationId(BW_MESSAGING_APPLICATION_ID)
67+
.channel(MultiChannelMessageChannelEnum.SMS)
68+
.content(new SmsMessageContent().text("Hello World!"))
69+
);
70+
MultiChannelMessageRequest smsRequest = new MultiChannelMessageRequest()
71+
.to(USER_NUMBER)
72+
.tag("tag")
73+
.priority(PriorityEnum.HIGH)
74+
.expiration(OffsetDateTime.now().plusSeconds(60))
75+
.channelList(Arrays.asList(channelListSMSObject));
76+
77+
ApiResponse<CreateMultiChannelMessageResponse> response
78+
= api.createMultiChannelMessageWithHttpInfo(BW_ACCOUNT_ID, smsRequest);
79+
80+
assertThat(response.getStatusCode(), is(202));
81+
assertThat(response.getData(), instanceOf(CreateMultiChannelMessageResponse.class));
82+
assertThat(response.getData().getLinks(), instanceOf(List.class));
83+
assertThat(response.getData().getData(), instanceOf(MultiChannelMessageResponseData.class));
84+
assertThat(response.getData().getData().getId(), instanceOf(String.class));
85+
assertThat(response.getData().getData().getTime(), instanceOf(OffsetDateTime.class));
86+
assertThat(response.getData().getData().getDirection(), instanceOf(MessageDirectionEnum.class));
87+
assertThat(response.getData().getData().getTo(), instanceOf(Set.class));
88+
assertThat(response.getData().getData().getTag(), instanceOf(String.class));
89+
assertThat(response.getData().getData().getPriority(), instanceOf(PriorityEnum.class));
90+
assertThat(response.getData().getData().getExpiration(), instanceOf(OffsetDateTime.class));
91+
assertThat(response.getData().getData().getChannelList(), instanceOf(List.class));
92+
assertThat(response.getData().getData().getChannelList().get(0), instanceOf(MultiChannelChannelListResponseObject.class));
93+
}
5994

6095
}

0 commit comments

Comments
 (0)