diff --git a/libs/labelbox/src/labelbox/schema/ontology.py b/libs/labelbox/src/labelbox/schema/ontology.py index 897759af1..6d0bd953a 100644 --- a/libs/labelbox/src/labelbox/schema/ontology.py +++ b/libs/labelbox/src/labelbox/schema/ontology.py @@ -94,6 +94,7 @@ class Type(Enum): MESSAGE_SINGLE_SELECTION = "message-single-selection" MESSAGE_MULTI_SELECTION = "message-multi-selection" MESSAGE_RANKING = "message-ranking" + MARKER = "marker" tool: Type name: str diff --git a/libs/labelbox/tests/unit/test_unit_ontology.py b/libs/labelbox/tests/unit/test_unit_ontology.py index ca0984aa2..0fb6d9155 100644 --- a/libs/labelbox/tests/unit/test_unit_ontology.py +++ b/libs/labelbox/tests/unit/test_unit_ontology.py @@ -164,6 +164,24 @@ def test_create_tool(tool_type) -> None: assert t.tool == tool_type +def test_marker_tool_from_dict_asdict_round_trip() -> None: + marker = { + "schemaNodeId": "marker-schema-node", + "featureSchemaId": "marker-feature-schema", + "required": False, + "name": "Scene boundary", + "color": "#FF0000", + "tool": "marker", + "classifications": [], + "attributes": None, + } + + tool = Tool.from_dict(marker) + + assert tool.tool is Tool.Type.MARKER + assert tool.asdict() == marker + + @pytest.mark.parametrize("class_type", list(Classification.Type)) def test_create_classification(class_type) -> None: c = Classification(class_type=class_type, name="classification")