Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 35 additions & 17 deletions tests/integration/items/test_set_approval_statuses.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,7 @@
sa = SAClient()


class TestSetApprovalStatuses(BaseTestCase):
PROJECT_NAME = "TestSetApprovalStatuses"
PROJECT_DESCRIPTION = "TestSetApprovalStatuses"
PROJECT_TYPE = "Vector"
FOLDER_NAME = "test_folder"
CSV_PATH = "data_set/attach_urls.csv"
EXAMPLE_IMAGE_1 = "6022a74d5384c50017c366b3"
EXAMPLE_IMAGE_2 = "6022a74b5384c50017c366ad"
ATTACHMENT_LIST = [
ATTACHMENT_LIST = [
{
"url": "https://drive.google.com/uc?export=download&id=1vwfCpTzcjxoEA4hhDxqapPOVvLVeS7ZS",
"name": "6022a74d5384c50017c366b3",
Expand All @@ -32,12 +24,22 @@ class TestSetApprovalStatuses(BaseTestCase):
},
]


class TestSetApprovalStatuses(BaseTestCase):
PROJECT_NAME = "TestSetApprovalStatuses"
PROJECT_DESCRIPTION = "TestSetApprovalStatuses"
PROJECT_TYPE = "Vector"
FOLDER_NAME = "test_folder"
CSV_PATH = "data_set/attach_urls.csv"
EXAMPLE_IMAGE_1 = "6022a74d5384c50017c366b3"
EXAMPLE_IMAGE_2 = "6022a74b5384c50017c366ad"

@property
def scv_path(self):
return os.path.join(Path(__file__).parent.parent.parent, self.CSV_PATH)

def test_image_approval_status(self):
sa.attach_items(self.PROJECT_NAME, self.ATTACHMENT_LIST)
sa.attach_items(self.PROJECT_NAME, ATTACHMENT_LIST)

sa.set_approval_statuses(
self.PROJECT_NAME,
Expand All @@ -47,7 +49,7 @@ def test_image_approval_status(self):
self.assertEqual(image["approval_status"], "Approved")

def test_image_approval_status_via_names(self):
sa.attach_items(self.PROJECT_NAME, self.ATTACHMENT_LIST)
sa.attach_items(self.PROJECT_NAME, ATTACHMENT_LIST)

sa.set_approval_statuses(
self.PROJECT_NAME, "Approved", [self.EXAMPLE_IMAGE_1, self.EXAMPLE_IMAGE_2]
Expand All @@ -58,7 +60,7 @@ def test_image_approval_status_via_names(self):
self.assertEqual(metadata["approval_status"], "Approved")

def test_image_approval_status_via_invalid_names(self):
sa.attach_items(self.PROJECT_NAME, self.ATTACHMENT_LIST, "InProgress")
sa.attach_items(self.PROJECT_NAME, ATTACHMENT_LIST, "InProgress")
with self.assertRaisesRegexp(AppException, "No items found."):
sa.set_approval_statuses(
self.PROJECT_NAME,
Expand All @@ -67,22 +69,38 @@ def test_image_approval_status_via_invalid_names(self):
)

def test_set_approval_statuses(self):
sa.attach_items(self.PROJECT_NAME, [self.ATTACHMENT_LIST[0]])
sa.attach_items(self.PROJECT_NAME, [ATTACHMENT_LIST[0]])
sa.set_approval_statuses(
self.PROJECT_NAME,
approval_status=None,
items=[self.ATTACHMENT_LIST[0]["name"]],
items=[ATTACHMENT_LIST[0]["name"]],
)
data = sa.search_items(self.PROJECT_NAME)[0]
assert data["approval_status"] is None

def test_set_invalid_approval_statuses(self):
sa.attach_items(self.PROJECT_NAME, [self.ATTACHMENT_LIST[0]])
sa.attach_items(self.PROJECT_NAME, [ATTACHMENT_LIST[0]])
with self.assertRaisesRegexp(
AppException, "Available values are 'Approved', 'Disapproved'."
):
sa.set_approval_statuses(
self.PROJECT_NAME,
approval_status="aaa",
items=[self.ATTACHMENT_LIST[0]["name"]],
approval_status="aaa", # noqa
items=[ATTACHMENT_LIST[0]["name"]],
)


class TestDocumentSetApprovalStatuses(BaseTestCase):
PROJECT_NAME = "TestDocumentSetApprovalStatuses"
PROJECT_DESCRIPTION = "TestDocumentSetApprovalStatuses"
PROJECT_TYPE = "Document"

def test_item_approval_status(self):
sa.attach_items(self.PROJECT_NAME, ATTACHMENT_LIST)

sa.set_approval_statuses(
self.PROJECT_NAME,
"Approved",
)
for item in sa.search_items(self.PROJECT_NAME):
self.assertEqual(item["approval_status"], "Approved")