11import contextvars
2+ import json
23import os
34import re
45import time
@@ -24,9 +25,39 @@ class TestWorkflow(TestCase):
2425 CLASSES_PATH = "sample_project_vector/classes/classes.json"
2526 ANNOTATIONS_PATH = "sample_project_vector"
2627 PROJECT_TYPE = "Vector"
28+ CUSTOM_WORKFLOW = "application/custom_workflow_payload.json"
2729
2830 @classmethod
2931 def setUpClass (cls , * args , ** kwargs ):
32+
33+ # setup custom role
34+ sa .controller .service_provider .work_management .create_custom_role (
35+ org_id = sa .controller .org_id ,
36+ data = {
37+ "name" : "CustomRole" ,
38+ "description" : "Test custom role" ,
39+ "rolePermissions" : [{"permission_id" : 11 }, {"permission_id" : 12 }],
40+ },
41+ )
42+
43+ # setup custom status
44+ sa .controller .service_provider .work_management .create_custom_status (
45+ org_id = sa .controller .org_id ,
46+ data = {
47+ "name" : "CustomStatus" ,
48+ "icon_id" : 7 ,
49+ "shortcut_id" : 7 ,
50+ "description" : "test status" ,
51+ },
52+ )
53+
54+ # setup custom workflow
55+ with open (os .path .join (DATA_SET_PATH , cls .CUSTOM_WORKFLOW )) as f :
56+ sa .controller .service_provider .create_custom_workflow (
57+ org_id = sa .controller .org_id ,
58+ data = json .load (f ),
59+ )
60+
3061 cls .tearDownClass ()
3162 cls ._project = sa .create_project (
3263 cls .PROJECT_NAME , cls .PROJECT_DESCRIPTION , cls .PROJECT_TYPE , workflow = "ttp"
@@ -37,12 +68,9 @@ def tearDownClass(cls) -> None:
3768 try :
3869 projects = sa .search_projects (cls .PROJECT_NAME , return_metadata = True )
3970 for project in projects :
40- try :
41- sa .delete_project (project )
42- except Exception as e :
43- print (str (e ))
44- except Exception as e :
45- print (str (e ))
71+ sa .delete_project (project )
72+ except Exception :
73+ pass
4674
4775 @property
4876 def classes_path (self ):
0 commit comments