Skip to content

Commit d0f5268

Browse files
authored
Merge pull request #192 from superannotateai/rename_project_log
Rename project log
2 parents 97bba85 + a17081f commit d0f5268

File tree

5 files changed

+20
-6
lines changed

5 files changed

+20
-6
lines changed

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

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,14 @@ def rename_project(project: str, new_name: str):
352352
:param new_name: project's new name
353353
:type new_name: str
354354
"""
355-
controller.update_project(name=project, project_data={"name": new_name})
355+
356+
response = controller.update_project(name=project, project_data={"name": new_name})
357+
if response.errors:
358+
raise AppException(response.errors)
359+
360+
logger.info(
361+
"Successfully renamed project %s to %s.", project, response.data["name"]
362+
)
356363

357364

358365
@Trackable

src/superannotate/lib/core/usecases.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,9 @@ def execute(self):
320320
if self.is_valid():
321321
for field, value in self._project_data.items():
322322
setattr(self._project, field, value)
323-
self._projects.update(self._project)
323+
new_project = self._projects.update(self._project)
324+
self._response.data = new_project.to_dict()
325+
return self._response
324326

325327

326328
class CloneProjectUseCase(BaseUseCase):

src/superannotate/lib/infrastructure/repositories.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,10 @@ def insert(self, entity: ProjectEntity) -> ProjectEntity:
9797

9898
def update(self, entity: ProjectEntity):
9999
condition = Condition("team_id", entity.team_id, EQ)
100-
self._service.update_project(
100+
result = self._service.update_project(
101101
entity.to_dict(), query_string=condition.build_query()
102102
)
103+
return self.dict2entity(result)
103104

104105
def delete(self, entity: ProjectEntity):
105106
team_id = entity.team_id

src/superannotate/lib/infrastructure/services.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ def update_project(self, data: dict, query_string: str = None) -> bool:
270270
if query_string:
271271
url = f"{url}?{query_string}"
272272
res = self._request(url, "put", data)
273-
return res.ok
273+
return res.json()
274274

275275
def attach_files(
276276
self,

tests/integration/test_project_rename.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,17 @@ class TestProjectRename(BaseTestCase):
77
PROJECT_DESCRIPTION = "Desc"
88
PROJECT_TYPE = "Vector"
99
NEW_PROJECT_NAME = "new"
10+
REPLACED_PROJECT_NAME = "_ _ _ _ _ _ _ _ _"
11+
BAD_PROJECT_NAME = '/ \ : * ? " < > |'
1012

1113
def test_project_rename(self):
1214
sa.rename_project(self.PROJECT_NAME, self.NEW_PROJECT_NAME)
1315
meta = sa.get_project_metadata(self.NEW_PROJECT_NAME)
1416
assert meta["name"] == self.NEW_PROJECT_NAME
17+
sa.delete_project(self.NEW_PROJECT_NAME)
1518

1619
def test_rename_with_special_characters(self):
17-
sa.rename_project(self.PROJECT_NAME, '/ \ : * ? " < > |')
18-
sa.get_project_metadata("_ _ _ _ _ _ _ _ _")
20+
sa.rename_project(self.PROJECT_NAME, self.BAD_PROJECT_NAME)
21+
sa.get_project_metadata(self.REPLACED_PROJECT_NAME)
22+
sa.delete_project(self.REPLACED_PROJECT_NAME)
1923

0 commit comments

Comments
 (0)