-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathtest_phone_number_lookup_api.py
More file actions
130 lines (109 loc) · 6.2 KB
/
test_phone_number_lookup_api.py
File metadata and controls
130 lines (109 loc) · 6.2 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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
# coding: utf-8
"""
Bandwidth
Bandwidth's Communication APIs
The version of the OpenAPI document: 1.0.0
Contact: letstalk@bandwidth.com
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the manually.
""" # noqa: E501
import unittest
from datetime import date
from uuid import UUID
from time import sleep
from hamcrest import *
from bandwidth import ApiClient, Configuration
from bandwidth.api.phone_number_lookup_api import PhoneNumberLookupApi
from bandwidth.models.async_lookup_request import AsyncLookupRequest
from bandwidth.models.create_async_bulk_lookup_response import CreateAsyncBulkLookupResponse
from bandwidth.models.link_schema import LinkSchema
from bandwidth.models.create_async_bulk_lookup_response_data import CreateAsyncBulkLookupResponseData
from bandwidth.models.in_progress_lookup_status_enum import InProgressLookupStatusEnum
from bandwidth.models.sync_lookup_request import SyncLookupRequest
from bandwidth.models.create_sync_lookup_response import CreateSyncLookupResponse
from bandwidth.models.completed_lookup_status_enum import CompletedLookupStatusEnum
from bandwidth.models.lookup_result import LookupResult
from bandwidth.models.line_type_enum import LineTypeEnum
from bandwidth.models.get_async_bulk_lookup_response import GetAsyncBulkLookupResponse
from test.utils.env_variables import *
class TestPhoneNumberLookupApi(unittest.TestCase):
"""PhoneNumberLookupApi unit test stubs"""
@classmethod
def setUpClass(cls) -> None:
configuration = Configuration(
client_id=BW_CLIENT_ID,
client_secret=BW_CLIENT_SECRET
)
api_client = ApiClient(configuration)
cls.api = PhoneNumberLookupApi(api_client)
cls.phone_numbers = [BW_NUMBER, USER_NUMBER]
def test_create_get_async_bulk_lookup(self) -> None:
"""Test case for create_async_bulk_lookup
Create Asynchronous Bulk Number Lookup
"""
request = AsyncLookupRequest(phone_numbers=self.phone_numbers)
response = self.api.create_async_bulk_lookup_with_http_info(BW_ACCOUNT_ID, request)
assert_that(response, is_not(none()))
assert_that(response.status_code, equal_to(202))
assert_that(response.data, is_not(none()))
assert_that(response.data, instance_of(CreateAsyncBulkLookupResponse))
assert_that(response.data.links, is_not(none()))
assert_that(response.data.links[0], instance_of(LinkSchema))
assert_that(response.data.links[0].rel, instance_of(str))
assert_that(response.data.links[0].href, instance_of(str))
assert_that(response.data.links[0].method, instance_of(str))
assert_that(response.data.data, is_not(none()))
assert_that(response.data.data, instance_of(CreateAsyncBulkLookupResponseData))
assert_that(response.data.data.request_id, instance_of(UUID))
assert_that(response.data.data.status, instance_of(InProgressLookupStatusEnum))
assert_that(response.data.errors, is_not(none()))
assert_that(response.data.errors, instance_of(list))
request_id = response.data.data.request_id
sleep(30)
response = self.api.get_async_bulk_lookup_with_http_info(BW_ACCOUNT_ID, request_id)
assert_that(response, is_not(none()))
assert_that(response.status_code, equal_to(200))
assert_that(response.data, is_not(none()))
assert_that(response.data, instance_of(GetAsyncBulkLookupResponse))
assert_that(response.data.links, is_not(none()))
assert_that(response.data.links[0], instance_of(LinkSchema))
assert_that(response.data.links[0].rel, instance_of(str))
assert_that(response.data.links[0].href, instance_of(str))
assert_that(response.data.links[0].method, instance_of(str))
assert_that(response.data.data, is_not(none()))
assert_that(response.data.data.request_id, equal_to(request_id))
assert_that(response.data.data.status, instance_of(InProgressLookupStatusEnum))
assert_that(response.data.data.status, equal_to(InProgressLookupStatusEnum('COMPLETE')))
assert_that(response.data.data.results, instance_of(list))
assert_that(response.data.data.results[0], instance_of(LookupResult))
assert_that(response.data.data.results[0].phone_number, instance_of(str))
assert_that(response.data.data.results[0].line_type, instance_of(LineTypeEnum))
assert_that(response.data.data.results[0].voice_provider, instance_of(str))
assert_that(response.data.data.results[0].country_code_a3, instance_of(str))
def test_create_sync_lookup(self) -> None:
"""Test case for create_sync_lookup
Create Synchronous Number Lookup
"""
request = SyncLookupRequest(phone_numbers=self.phone_numbers)
response = self.api.create_sync_lookup_with_http_info(BW_ACCOUNT_ID, request)
assert_that(response, is_not(none()))
assert_that(response.status_code, equal_to(200))
assert_that(response.data, is_not(none()))
assert_that(response.data, instance_of(CreateSyncLookupResponse))
assert_that(response.data.links, is_not(none()))
assert_that(response.data.links[0], instance_of(LinkSchema))
assert_that(response.data.links[0].rel, instance_of(str))
assert_that(response.data.links[0].href, instance_of(str))
assert_that(response.data.links[0].method, instance_of(str))
assert_that(response.data.data, is_not(none()))
assert_that(response.data.data.request_id, instance_of(UUID))
assert_that(response.data.data.status, instance_of(CompletedLookupStatusEnum))
assert_that(response.data.data.status, equal_to(CompletedLookupStatusEnum('COMPLETE')))
assert_that(response.data.data.results, instance_of(list))
assert_that(response.data.data.results[0], instance_of(LookupResult))
assert_that(response.data.data.results[0].phone_number, instance_of(str))
assert_that(response.data.data.results[0].line_type, instance_of(LineTypeEnum))
assert_that(response.data.data.results[0].voice_provider, instance_of(str))
assert_that(response.data.data.results[0].country_code_a3, instance_of(str))
if __name__ == '__main__':
unittest.main()