Skip to content

Commit 24122a6

Browse files
committed
Fixed OperatorEnum ends
tod
1 parent 43a35bd commit 24122a6

File tree

5 files changed

+25
-10
lines changed

5 files changed

+25
-10
lines changed

src/superannotate/lib/app/interface/sdk_interface.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2464,7 +2464,7 @@ def query(
24642464
"""Return items that satisfy the given query.
24652465
Query syntax should be in SuperAnnotate query language(https://doc.superannotate.com/docs/explore-overview).
24662466
2467-
:param project: project name or folder path (e.g., project1/folder1)
2467+
:param project: project name or folder path (e.g., "project1/folder1")
24682468
:type project: str
24692469
24702470
:param query: SAQuL query string.
@@ -2474,7 +2474,7 @@ def query(
24742474
To return all the items in the specified subset, set the value of query param to None.
24752475
:type subset: str
24762476
2477-
:return: queried items metadata list
2477+
:return: queried items' metadata list
24782478
:rtype: list of dicts
24792479
"""
24802480
project_name, folder_name = extract_project_folder(project)
@@ -2483,7 +2483,15 @@ def query(
24832483
)
24842484
if response.errors:
24852485
raise AppException(response.errors)
2486-
return BaseSerializer.serialize_iterable(response.data, exclude={"meta"})
2486+
project = self.controller.get_project(project_name)
2487+
items = BaseSerializer.serialize_iterable(response.data, exclude={"meta"})
2488+
for i in items:
2489+
i[
2490+
"annotation_status"
2491+
] = self.controller.service_provider.get_annotation_status_name(
2492+
project, i["annotation_status"]
2493+
)
2494+
return items
24872495

24882496
def get_item_metadata(
24892497
self,
@@ -2807,7 +2815,7 @@ def list_items(
28072815
project=project, item_ids=[i.id for i in res]
28082816
)
28092817
for i in res:
2810-
i["custom_metadata"] = item_custom_fields[i["id"]]
2818+
i["custom_metadata"] = item_custom_fields[i.id]
28112819
exclude = {"meta", "annotator_email", "qa_email"}
28122820
if include:
28132821
if "custom_metadata" not in include:

src/superannotate/lib/core/entities/base.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -280,10 +280,10 @@ def add_path(self, project_name: str, folder_name: str):
280280

281281
@staticmethod
282282
def map_fields(entity: dict) -> dict:
283-
if "path" in entity:
284-
entity["url"] = entity["path"]
285-
else:
283+
if "metadata" in entity:
286284
entity["url"] = entity["metadata"]["path"]
285+
else:
286+
entity["url"] = entity["path"]
287287
entity["path"] = None
288288
return entity
289289

src/superannotate/lib/core/usecases/items.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,9 @@ def execute(self) -> Response:
139139
if service_response.ok:
140140
data = []
141141
for i, item in enumerate(service_response.data):
142+
# tmp wrapper
143+
if hasattr(item, "assignment"):
144+
item.assignments = item.assignment
142145
tmp_item = serialize_item_entity(
143146
BaseItemEntity(**item), self._project
144147
)

src/superannotate/lib/core/usecases/projects.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -692,8 +692,7 @@ def execute(self):
692692
team_users.add(user["email"])
693693
# collecting pending project users which is not admin
694694
for user in self._project.unverified_users:
695-
if user["user_role"] == constances.UserRole.CONTRIBUTOR.value:
696-
project_users.add(user["email"])
695+
project_users.add(user["email"])
697696

698697
role_email_map = defaultdict(list)
699698
to_skip = []

tests/integration/items/test_get_item_metadata.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,16 +92,21 @@ def folder_path(self):
9292
return os.path.join(Path(__file__).parent.parent.parent, self.TEST_FOLDER_PATH)
9393

9494
def test_get_item_metadata(self):
95+
_url = "https://drive.google.com/uc?export=download&id=1vwfCpTzcjxoEA4hhDxqapPOVvLVeS7ZS"
9596
sa.attach_items(
9697
self.PROJECT_NAME,
9798
[
9899
{
99-
"url": "https://drive.google.com/uc?export=download&id=1vwfCpTzcjxoEA4hhDxqapPOVvLVeS7ZS",
100+
"url": _url,
100101
"name": self.ITEM_NAME,
101102
}
102103
],
103104
)
104105
item_metadata = sa.get_item_metadata(self.PROJECT_NAME, self.ITEM_NAME)
105106
assert item_metadata["path"] == f"{self.PROJECT_NAME}"
107+
assert item_metadata["url"] == (
108+
"https://drive.google.com/uc?ex"
109+
"port=download&id=1vwfCpTzcjxoEA4hhDxqapPOVvLVeS7ZS"
110+
)
106111
assert "prediction_status" not in item_metadata
107112
assert "segmentation_status" not in item_metadata

0 commit comments

Comments
 (0)