Skip to content

Commit b8f070a

Browse files
committed
inclusion of more data row get tests
1 parent 9ba76c6 commit b8f070a

File tree

1 file changed

+108
-0
lines changed

1 file changed

+108
-0
lines changed

tests/integration/test_global_keys.py

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,3 +145,111 @@ def test_global_key_with_whitespaces_validation(client, dataset, image_url):
145145
assert assign_errors_gks == set([gk_1, gk_2, gk_3])
146146
assert assign_errors_msgs == set(
147147
['Invalid global key', 'Invalid global key', 'Invalid global key'])
148+
149+
150+
def test_get_data_rows_for_global_keys(client, dataset, image_url):
151+
gk_1 = str(uuid.uuid4())
152+
gk_2 = str(uuid.uuid4())
153+
154+
dr_1 = dataset.create_data_row(row_data=image_url,
155+
external_id="hello",
156+
global_key=gk_1)
157+
dr_2 = dataset.create_data_row(row_data=image_url,
158+
external_id="world",
159+
global_key=gk_2)
160+
161+
res = client.get_data_rows_for_global_keys([gk_1])
162+
assert res['status'] == "SUCCESS"
163+
assert res['errors'] == []
164+
assert res['results'] == [dr_1]
165+
166+
res = client.get_data_rows_for_global_keys([gk_2])
167+
assert res['status'] == "SUCCESS"
168+
assert res['errors'] == []
169+
assert res['results'] == [dr_2]
170+
171+
res = client.get_data_rows_for_global_keys([gk_1, gk_2])
172+
assert res['status'] == "SUCCESS"
173+
assert res['errors'] == []
174+
assert res['results'] == [dr_1, dr_2]
175+
176+
177+
def test_get_data_rows_for_invalid_global_keys(client, dataset, image_url):
178+
gk_1 = str(uuid.uuid4())
179+
gk_2 = str(uuid.uuid4())
180+
181+
dr_1 = dataset.create_data_row(row_data=image_url, external_id="hello")
182+
dr_2 = dataset.create_data_row(row_data=image_url,
183+
external_id="world",
184+
global_key=gk_2)
185+
186+
res = client.get_data_rows_for_global_keys([gk_1])
187+
assert res['status'] == "FAILURE"
188+
assert len(res['errors']) == 1
189+
assert res['errors'][0]['error'] == "Data Row not found"
190+
assert res['errors'][0]['global_key'] == gk_1
191+
192+
res = client.get_data_rows_for_global_keys([gk_1, gk_2])
193+
assert res['status'] == "PARTIAL SUCCESS"
194+
195+
assert len(res['errors']) == 1
196+
assert len(res['results']) == 1
197+
198+
assert res['errors'][0]['error'] == "Data Row not found"
199+
assert res['errors'][0]['global_key'] == gk_1
200+
201+
assert res['results'][0] == dr_2
202+
203+
204+
def test_get_data_row_ids_for_global_keys(client, dataset, image_url):
205+
gk_1 = str(uuid.uuid4())
206+
gk_2 = str(uuid.uuid4())
207+
208+
dr_1 = dataset.create_data_row(row_data=image_url,
209+
external_id="hello",
210+
global_key=gk_1)
211+
dr_2 = dataset.create_data_row(row_data=image_url,
212+
external_id="world",
213+
global_key=gk_2)
214+
215+
res = client.get_data_row_ids_for_global_keys([gk_1])
216+
assert res['status'] == "SUCCESS"
217+
assert res['errors'] == []
218+
assert res['results'] == [dr_1.uid]
219+
220+
res = client.get_data_row_ids_for_global_keys([gk_2])
221+
assert res['status'] == "SUCCESS"
222+
assert res['errors'] == []
223+
assert res['results'] == [dr_2.uid]
224+
225+
res = client.get_data_row_ids_for_global_keys([gk_1, gk_2])
226+
assert res['status'] == "SUCCESS"
227+
assert res['errors'] == []
228+
assert res['results'] == [dr_1.uid, dr_2.uid]
229+
230+
231+
def test_get_data_row_ids_for_invalid_global_keys(client, dataset, image_url):
232+
gk_1 = str(uuid.uuid4())
233+
gk_2 = str(uuid.uuid4())
234+
235+
dr_1 = dataset.create_data_row(row_data=image_url, external_id="hello")
236+
dr_2 = dataset.create_data_row(row_data=image_url,
237+
external_id="world",
238+
global_key=gk_2)
239+
240+
res = client.get_data_row_ids_for_global_keys([gk_1])
241+
assert res['status'] == "FAILURE"
242+
assert len(res['errors']) == 1
243+
assert res['errors'][0]['error'] == "Data Row not found"
244+
assert res['errors'][0]['global_key'] == gk_1
245+
246+
res = client.get_data_row_ids_for_global_keys([gk_1, gk_2])
247+
assert res['status'] == "PARTIAL SUCCESS"
248+
249+
assert len(res['errors']) == 1
250+
assert len(res['results']) == 1
251+
252+
assert res['errors'][0]['error'] == "Data Row not found"
253+
assert res['errors'][0]['global_key'] == gk_1
254+
255+
assert res['results'][0] == dr_2.uid

0 commit comments

Comments
 (0)