77
88from fastlabel import Client , FastLabelInvalidException
99
10+ OBJECT_SIGNED_URL_KEY = "objectSignedUrl"
11+
12+
13+ def remove_object_signed_url (d : dict ) -> dict :
14+ return {k : v for k , v in d .items () if k != OBJECT_SIGNED_URL_KEY }
15+
1016
1117@pytest .fixture
1218def client () -> Client :
@@ -112,7 +118,9 @@ def test_find_dataset_object(self, client: Client, testing_image_dataset: dict):
112118 # Act
113119 result = client .find_dataset_object (dataset_object_id = dataset_object ["id" ])
114120 # Assert
115- assert result == dataset_object
121+ assert remove_object_signed_url (result ) == remove_object_signed_url (
122+ dataset_object
123+ )
116124
117125 def test_get_dataset_object (self , client : Client , testing_image_dataset : dict ):
118126 # Arrange
@@ -132,45 +140,49 @@ def test_get_dataset_object(self, client: Client, testing_image_dataset: dict):
132140 # Assert
133141 assert results is not None
134142 assert len (results ) == 2
135- assert results [0 ] == dataset_object1
136- assert results [1 ] == dataset_object2
143+ assert remove_object_signed_url (results [0 ]) == remove_object_signed_url (
144+ dataset_object1
145+ )
146+ assert remove_object_signed_url (results [1 ]) == remove_object_signed_url (
147+ dataset_object2
148+ )
137149
138150 def test_delete_dataset_object (self , client : Client , testing_image_dataset : dict ):
139151 # Arrange
140152 target_file = Path (sys .path [0 ]) / "files/test_image.jpg"
141- dataset_object1 = client .create_image_dataset_object (
142- dataset_id = testing_image_dataset ["id" ],
143- name = "test_image1.jpg" ,
144- file_path = str (target_file ),
145- )
146- dataset_object2 = client .create_image_dataset_object (
147- dataset_id = testing_image_dataset ["id" ],
148- name = "test_image2.jpg" ,
149- file_path = str (target_file ),
150- )
151- dataset_object3 = client .create_image_dataset_object (
152- dataset_id = testing_image_dataset ["id" ],
153- name = "test_image3.jpg" ,
154- file_path = str (target_file ),
155- )
153+ dataset_object_names = ["test_image1.jpg" , "test_image2.jpg" , "test_image3.jpg" ]
154+ created = [
155+ client .create_image_dataset_object (
156+ dataset_id = testing_image_dataset ["id" ],
157+ name = name ,
158+ file_path = str (target_file ),
159+ )
160+ for name in dataset_object_names
161+ ]
156162 dataset_objects = client .get_dataset_objects (
157163 dataset_id = testing_image_dataset ["id" ]
158164 )
159165 assert dataset_objects is not None
160166 assert len (dataset_objects ) == 3
161- assert dataset_objects [0 ] == dataset_object1
162- assert dataset_objects [1 ] == dataset_object2
163- assert dataset_objects [2 ] == dataset_object3
167+ for i , dataset_object in enumerate (dataset_objects ):
168+ assert OBJECT_SIGNED_URL_KEY in dataset_object
169+ assert OBJECT_SIGNED_URL_KEY in created [i ]
170+ assert remove_object_signed_url (dataset_object ) == remove_object_signed_url (
171+ created [i ]
172+ )
173+
164174 # Act
165175 client .delete_dataset_objects (
166176 dataset_id = testing_image_dataset ["id" ],
167- dataset_object_ids = [dataset_object1 [ "id" ], dataset_object3 ["id" ]],
177+ dataset_object_ids = [created [ 0 ][ "id" ], created [ 2 ] ["id" ]],
168178 )
169179 # Assert
170180 results = client .get_dataset_objects (dataset_id = testing_image_dataset ["id" ])
171181 assert results is not None
172182 assert len (results ) == 1
173- assert results [0 ] == dataset_object2
183+ assert remove_object_signed_url (results [0 ]) == remove_object_signed_url (
184+ created [1 ]
185+ )
174186
175187
176188class TestVideoDataset :
@@ -240,7 +252,9 @@ def test_find_dataset_object(self, client: Client, testing_video_dataset: dict):
240252 # Act
241253 result = client .find_dataset_object (dataset_object_id = dataset_object ["id" ])
242254 # Assert
243- assert result == dataset_object
255+ assert remove_object_signed_url (result ) == remove_object_signed_url (
256+ dataset_object
257+ )
244258
245259 def test_get_dataset_object (self , client : Client , testing_video_dataset : dict ):
246260 # Arrange
@@ -260,45 +274,50 @@ def test_get_dataset_object(self, client: Client, testing_video_dataset: dict):
260274 # Assert
261275 assert results is not None
262276 assert len (results ) == 2
263- assert results [0 ] == dataset_object1
264- assert results [1 ] == dataset_object2
277+ assert remove_object_signed_url (results [0 ]) == remove_object_signed_url (
278+ dataset_object1
279+ )
280+ assert remove_object_signed_url (results [1 ]) == remove_object_signed_url (
281+ dataset_object2
282+ )
265283
266284 def test_delete_dataset_object (self , client : Client , testing_video_dataset : dict ):
267285 # Arrange
268286 target_file = Path (sys .path [0 ]) / "files/test_video.mp4"
269- dataset_object1 = client .create_video_dataset_object (
270- dataset_id = testing_video_dataset ["id" ],
271- name = "test_video1.mp4" ,
272- file_path = str (target_file ),
273- )
274- dataset_object2 = client .create_video_dataset_object (
275- dataset_id = testing_video_dataset ["id" ],
276- name = "test_video2.mp4" ,
277- file_path = str (target_file ),
278- )
279- dataset_object3 = client .create_video_dataset_object (
280- dataset_id = testing_video_dataset ["id" ],
281- name = "test_video3.mp4" ,
282- file_path = str (target_file ),
283- )
287+ dataset_object_names = ["test_video1.mp4" , "test_video2.mp4" , "test_video3.mp4" ]
288+ created = [
289+ client .create_video_dataset_object (
290+ dataset_id = testing_video_dataset ["id" ],
291+ name = name ,
292+ file_path = str (target_file ),
293+ )
294+ for name in dataset_object_names
295+ ]
296+
284297 dataset_objects = client .get_dataset_objects (
285298 dataset_id = testing_video_dataset ["id" ]
286299 )
287300 assert dataset_objects is not None
288301 assert len (dataset_objects ) == 3
289- assert dataset_objects [0 ] == dataset_object1
290- assert dataset_objects [1 ] == dataset_object2
291- assert dataset_objects [2 ] == dataset_object3
302+ for i , dataset_object in enumerate (dataset_objects ):
303+ assert OBJECT_SIGNED_URL_KEY in dataset_object
304+ assert OBJECT_SIGNED_URL_KEY in created [i ]
305+ assert remove_object_signed_url (dataset_object ) == remove_object_signed_url (
306+ created [i ]
307+ )
308+
292309 # Act
293310 client .delete_dataset_objects (
294311 dataset_id = testing_video_dataset ["id" ],
295- dataset_object_ids = [dataset_object1 [ "id" ], dataset_object3 ["id" ]],
312+ dataset_object_ids = [created [ 0 ][ "id" ], created [ 2 ] ["id" ]],
296313 )
297314 # Assert
298315 results = client .get_dataset_objects (dataset_id = testing_video_dataset ["id" ])
299316 assert results is not None
300317 assert len (results ) == 1
301- assert results [0 ] == dataset_object2
318+ assert remove_object_signed_url (results [0 ]) == remove_object_signed_url (
319+ created [1 ]
320+ )
302321
303322
304323class TestAudioDataset :
@@ -370,7 +389,9 @@ def test_find_dataset_object(self, client: Client, testing_audio_dataset: dict):
370389 # Act
371390 result = client .find_dataset_object (dataset_object_id = dataset_object ["id" ])
372391 # Assert
373- assert result == dataset_object
392+ assert remove_object_signed_url (result ) == remove_object_signed_url (
393+ dataset_object
394+ )
374395
375396 def test_get_dataset_object (self , client : Client , testing_audio_dataset : dict ):
376397 # Arrange
@@ -390,45 +411,47 @@ def test_get_dataset_object(self, client: Client, testing_audio_dataset: dict):
390411 # Assert
391412 assert results is not None
392413 assert len (results ) == 2
393- assert results [0 ] == dataset_object1
394- assert results [1 ] == dataset_object2
414+ assert remove_object_signed_url (results [0 ]) == remove_object_signed_url (
415+ dataset_object1
416+ )
417+ assert remove_object_signed_url (results [1 ]) == remove_object_signed_url (
418+ dataset_object2
419+ )
395420
396421 def test_delete_dataset_object (self , client : Client , testing_audio_dataset : dict ):
397422 # Arrange
398423 target_file = Path (sys .path [0 ]) / "files/test_audio.mp3"
399- dataset_object1 = client .create_audio_dataset_object (
400- dataset_id = testing_audio_dataset ["id" ],
401- name = "test_audio1.mp3" ,
402- file_path = str (target_file ),
403- )
404- dataset_object2 = client .create_audio_dataset_object (
405- dataset_id = testing_audio_dataset ["id" ],
406- name = "test_audio2.mp3" ,
407- file_path = str (target_file ),
408- )
409- dataset_object3 = client .create_audio_dataset_object (
410- dataset_id = testing_audio_dataset ["id" ],
411- name = "test_audio3.mp3" ,
412- file_path = str (target_file ),
413- )
424+ dataset_object_names = ["test_audio1.mp3" , "test_audio2.mp3" , "test_audio3.mp3" ]
425+ created = [
426+ client .create_audio_dataset_object (
427+ dataset_id = testing_audio_dataset ["id" ],
428+ name = name ,
429+ file_path = str (target_file ),
430+ )
431+ for name in dataset_object_names
432+ ]
414433 dataset_objects = client .get_dataset_objects (
415434 dataset_id = testing_audio_dataset ["id" ]
416435 )
417- assert dataset_objects is not None
418- assert len (dataset_objects ) == 3
419- assert dataset_objects [0 ] == dataset_object1
420- assert dataset_objects [1 ] == dataset_object2
421- assert dataset_objects [2 ] == dataset_object3
436+ for i , dataset_object in enumerate (dataset_objects ):
437+ assert OBJECT_SIGNED_URL_KEY in dataset_object
438+ assert OBJECT_SIGNED_URL_KEY in created [i ]
439+ assert remove_object_signed_url (dataset_object ) == remove_object_signed_url (
440+ created [i ]
441+ )
442+
422443 # Act
423444 client .delete_dataset_objects (
424445 dataset_id = testing_audio_dataset ["id" ],
425- dataset_object_ids = [dataset_object1 [ "id" ], dataset_object3 ["id" ]],
446+ dataset_object_ids = [created [ 0 ][ "id" ], created [ 2 ] ["id" ]],
426447 )
427448 # Assert
428449 results = client .get_dataset_objects (dataset_id = testing_audio_dataset ["id" ])
429450 assert results is not None
430451 assert len (results ) == 1
431- assert results [0 ] == dataset_object2
452+ assert remove_object_signed_url (results [0 ]) == remove_object_signed_url (
453+ created [1 ]
454+ )
432455
433456
434457class TestDatasetObjectImportHistories :
0 commit comments