Skip to content

Commit 890557a

Browse files
committed
Address the comments
1 parent 4ab20bb commit 890557a

File tree

5 files changed

+19
-20
lines changed

5 files changed

+19
-20
lines changed

examples/sample_get_identity_buckets.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,6 @@ def _usage():
3030

3131
identity_buckets_response = client.get_identity_buckets(datetime.datetime(year, month, day, hour, minute, second))
3232

33-
if identity_buckets_response.buckets:
34-
bucket = identity_buckets_response.buckets[0]
33+
for bucket in identity_buckets_response.buckets:
3534
print("The bucket id of the first bucket: ", bucket.get_bucket_id())
3635
print("The last updated timestamp of the first bucket: ", bucket.get_last_updated())
37-
else:
38-
print("No buckets were returned for this datetime")

tests/test_identity_map_client.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,21 +135,23 @@ def test_identity_map_hashed_phones(self):
135135
def test_identity_map_client_bad_url(self):
136136
identity_map_input = IdentityMapInput.from_emails(
137137
["hopefully-not-opted-out@example.com", "somethingelse@example.com", "optout@example.com"])
138-
client = IdentityMapClient("https://operator-bad-url.uidapi.com", os.getenv("UID2_API_KEY"), os.getenv("UID2_SECRET_KEY"))
138+
client = IdentityMapClient("https://operator-bad-url.uidapi.com", os.getenv("UID2_API_KEY"),
139+
os.getenv("UID2_SECRET_KEY"))
139140
self.assertRaises(requests.exceptions.ConnectionError, client.generate_identity_map, identity_map_input)
140141
self.assertRaises(requests.exceptions.ConnectionError, client.get_identity_buckets, datetime.datetime.now())
141142

142143
def test_identity_map_client_bad_api_key(self):
143144
identity_map_input = IdentityMapInput.from_emails(
144145
["hopefully-not-opted-out@example.com", "somethingelse@example.com", "optout@example.com"])
145146
client = IdentityMapClient(os.getenv("UID2_BASE_URL"), "bad-api-key", os.getenv("UID2_SECRET_KEY"))
146-
self.assertRaises(requests.exceptions.HTTPError, client.generate_identity_map,identity_map_input)
147+
self.assertRaises(requests.exceptions.HTTPError, client.generate_identity_map, identity_map_input)
147148
self.assertRaises(requests.exceptions.HTTPError, client.get_identity_buckets, datetime.datetime.now())
148149

149150
def test_identity_map_client_bad_secret(self):
150151
identity_map_input = IdentityMapInput.from_emails(
151152
["hopefully-not-opted-out@example.com", "somethingelse@example.com", "optout@example.com"])
152-
client = IdentityMapClient(os.getenv("UID2_BASE_URL"), os.getenv("UID2_API_KEY"), "wJ0hP19QU4hmpB64Y3fV2dAed8t/mupw3sjN5jNRFzg=")
153+
client = IdentityMapClient(os.getenv("UID2_BASE_URL"), os.getenv("UID2_API_KEY"),
154+
"wJ0hP19QU4hmpB64Y3fV2dAed8t/mupw3sjN5jNRFzg=")
153155
self.assertRaises(requests.exceptions.HTTPError, client.generate_identity_map,
154156
identity_map_input)
155157
self.assertRaises(requests.exceptions.HTTPError, client.get_identity_buckets,
@@ -182,8 +184,16 @@ def test_identity_buckets_empty_response(self):
182184
self.assertTrue(response.is_success)
183185

184186
def test_identity_buckets_invalid_timestamp(self):
185-
self.assertRaises(TypeError, self.identity_map_client.get_identity_buckets,
186-
"1234567890")
187+
test_cases = ["1234567890",
188+
1234567890,
189+
2024.7,
190+
"2024-7-1",
191+
"2024-07-01T12:00:00",
192+
[2024, 7, 1, 12, 0, 0],
193+
None]
194+
for timestamp in test_cases:
195+
self.assertRaises(AttributeError, self.identity_map_client.get_identity_buckets,
196+
timestamp)
187197

188198

189199
if __name__ == '__main__':

uid2_client/identity_map_client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import json
44
from datetime import timezone
55

6-
from .Identity_buckets_response import IdentityBucketsResponse
6+
from .identity_buckets_response import IdentityBucketsResponse
77
from .identity_map_response import IdentityMapResponse
88

99
from uid2_client import auth_headers, make_v2_request, post, parse_v2_response, get_datetime_iso_format
@@ -44,7 +44,7 @@ def generate_identity_map(self, identity_map_input):
4444

4545
def get_identity_buckets(self, since_timestamp):
4646
req, nonce = make_v2_request(self._client_secret, dt.datetime.now(tz=timezone.utc),
47-
json.dumps({"since_timestamp": get_datetime_iso_format(since_timestamp)}).encode())
47+
json.dumps({"since_timestamp": since_timestamp.isoformat()}).encode())
4848
resp = post(self._base_url, '/v2/identity/buckets', headers=auth_headers(self._api_key), data=req)
4949
resp.raise_for_status()
5050
resp_body = parse_v2_response(self._client_secret, resp.text, nonce)

uid2_client/input_util.py

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -119,12 +119,4 @@ def normalize_and_hash_email(email):
119119
def normalize_and_hash_phone(phone):
120120
if not is_phone_number_normalized(phone):
121121
raise ValueError("phone number is not normalized: " + phone)
122-
return get_base64_encoded_hash(phone)
123-
124-
125-
def get_datetime_iso_format(timestamp):
126-
if isinstance(timestamp, datetime.datetime):
127-
return timestamp.isoformat()
128-
else:
129-
raise TypeError("timestamp is not in datetime format")
130-
122+
return get_base64_encoded_hash(phone)

0 commit comments

Comments
 (0)