Skip to content

Commit 47063d7

Browse files
Merge pull request #570 from Labelbox/kkim/add-metadata-exception-test
[AL-0] Modify test for data row with metadata creation
2 parents e623012 + 6431afe commit 47063d7

File tree

3 files changed

+25
-38
lines changed

3 files changed

+25
-38
lines changed

labelbox/client.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
logger = logging.getLogger(__name__)
3838

3939
_LABELBOX_API_KEY = "LABELBOX_API_KEY"
40-
_DATAROW_METADATA_CREATE_ERROR = "Failed to validate the metadata"
4140

4241

4342
class Client:
@@ -271,8 +270,6 @@ def get_error_status_code(error):
271270

272271
if get_error_status_code(internal_server_error) == 400:
273272
raise labelbox.exceptions.InvalidQueryError(message)
274-
elif _DATAROW_METADATA_CREATE_ERROR in message:
275-
raise labelbox.exceptions.ResourceCreationError(message)
276273
else:
277274
raise labelbox.exceptions.InternalServerError(message)
278275

tests/integration/test_client_errors.py

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,11 @@
22
import os
33
import time
44
import pytest
5-
from datetime import datetime
65

76
from labelbox import Project, Dataset, User
8-
from labelbox.schema.data_row_metadata import DataRowMetadataField
97
import labelbox.client
108
import labelbox.exceptions
119

12-
SPLIT_SCHEMA_ID = "cko8sbczn0002h2dkdaxb5kal"
13-
TEST_SPLIT_ID = "cko8scbz70005h2dkastwhgqt"
14-
EMBEDDING_SCHEMA_ID = "ckpyije740000yxdk81pbgjdc"
15-
TEXT_SCHEMA_ID = "cko8s9r5v0001h2dk9elqdidh"
16-
CAPTURE_DT_SCHEMA_ID = "cko8sdzv70006h2dk8jg64zvb"
17-
IMAGE_EMBEDDING_SCHEMA_ID = "ckrzang79000008l6hb5s6za1"
18-
TEXT_EMBEDDING_SCHEMA_ID = "ckrzao09x000108l67vrcdnh3"
19-
2010

2111
def test_missing_api_key():
2212
key = os.environ.get(labelbox.client._LABELBOX_API_KEY, None)
@@ -142,28 +132,3 @@ def get(arg):
142132

143133
# Sleep at the end of this test to allow other tests to execute.
144134
time.sleep(60)
145-
146-
147-
@pytest.mark.skip("Staging environment not returning correct exception")
148-
def test_resource_creation_error(dataset, image_url):
149-
150-
def make_metadata_fields():
151-
embeddings = [0.0] * 128
152-
msg = "A message"
153-
time = datetime.utcnow()
154-
155-
fields = [
156-
DataRowMetadataField(schema_id=SPLIT_SCHEMA_ID,
157-
value=TEST_SPLIT_ID),
158-
DataRowMetadataField(schema_id=CAPTURE_DT_SCHEMA_ID, value=time),
159-
DataRowMetadataField(schema_id=TEXT_SCHEMA_ID, value=msg),
160-
DataRowMetadataField(schema_id=EMBEDDING_SCHEMA_ID,
161-
value=embeddings),
162-
DataRowMetadataField(schema_id=EMBEDDING_SCHEMA_ID,
163-
value=embeddings),
164-
]
165-
return fields
166-
167-
with pytest.raises(labelbox.exceptions.ResourceCreationError) as excinfo:
168-
dataset.create_data_row(row_data=image_url,
169-
custom_metadata=make_metadata_fields())

tests/integration/test_data_rows.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
from labelbox import DataRow
1010
from labelbox.schema.data_row_metadata import DataRowMetadataField
11+
import labelbox.exceptions
1112

1213
SPLIT_SCHEMA_ID = "cko8sbczn0002h2dkdaxb5kal"
1314
TEST_SPLIT_ID = "cko8scbz70005h2dkastwhgqt"
@@ -176,6 +177,30 @@ def test_data_row_single_creation_with_metadata(dataset, rand_gen, image_url):
176177
assert requests.get(data_row_2.row_data).content == data
177178

178179

180+
def test_data_row_single_creation_with_invalid_metadata(dataset, image_url):
181+
182+
def make_invalid_metadata_fields():
183+
embeddings = [0.0] * 128
184+
msg = "A message"
185+
time = datetime.utcnow()
186+
187+
fields = [
188+
DataRowMetadataField(schema_id=SPLIT_SCHEMA_ID,
189+
value=TEST_SPLIT_ID),
190+
DataRowMetadataField(schema_id=CAPTURE_DT_SCHEMA_ID, value=time),
191+
DataRowMetadataField(schema_id=TEXT_SCHEMA_ID, value=msg),
192+
DataRowMetadataField(schema_id=EMBEDDING_SCHEMA_ID,
193+
value=embeddings),
194+
DataRowMetadataField(schema_id=EMBEDDING_SCHEMA_ID,
195+
value=embeddings),
196+
]
197+
return fields
198+
199+
with pytest.raises(labelbox.exceptions.MalformedQueryException) as excinfo:
200+
dataset.create_data_row(row_data=image_url,
201+
custom_metadata=make_invalid_metadata_fields())
202+
203+
179204
def test_data_row_update(dataset, rand_gen, image_url):
180205
external_id = rand_gen(str)
181206
data_row = dataset.create_data_row(row_data=image_url,

0 commit comments

Comments
 (0)