Skip to content

Commit b4780cc

Browse files
author
Val Brodsky
committed
Fix media_type conversions
1 parent 1e5aa70 commit b4780cc

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

libs/labelbox/src/labelbox/schema/media_type.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from enum import Enum
22

3+
from labelbox.utils import camel_case
4+
35

46
class MediaType(Enum):
57
Audio = "AUDIO"
@@ -23,7 +25,7 @@ class MediaType(Enum):
2325
LLM = "LLM"
2426

2527
@classmethod
26-
def _missing_(cls, value: str):
28+
def _missing_(cls, value):
2729
"""Handle missing null data types for projects
2830
created without setting allowedMediaType
2931
Handle upper case names for compatibility with
@@ -32,8 +34,18 @@ def _missing_(cls, value: str):
3234
if value is None:
3335
return cls.Unknown
3436

37+
def matches(value, name):
38+
value_upper = value.upper()
39+
name_upper = name.upper()
40+
value_underscore = value.replace("-", "_")
41+
camel_case_value = camel_case(value_underscore)
42+
43+
return (value_upper == name_upper or
44+
value_underscore.upper() == name_upper or
45+
camel_case_value.upper() == name_upper)
46+
3547
for name, member in cls.__members__.items():
36-
if name.upper() == value.upper():
48+
if matches(value, name):
3749
return member
3850

3951
@classmethod

libs/labelbox/tests/integration/test_labeling_dashboard.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@ def test_request_labeling_service_moe_offline_project(
1616
assert labeling_service_dashboard.tasks_completed == 0
1717
assert labeling_service_dashboard.tasks_remaining == 0
1818

19-
labeling_service_dashboard = [
20-
ld for ld in project.client.get_labeling_service_dashboards()
21-
][0]
22-
assert labeling_service_dashboard.status == LabelingServiceStatus.Missing
23-
assert labeling_service_dashboard.tasks_completed == 0
24-
assert labeling_service_dashboard.tasks_remaining == 0
19+
labeling_service_dashboard = project.client.get_labeling_service_dashboards(
20+
).get_one()
21+
assert labeling_service_dashboard

0 commit comments

Comments
 (0)