@@ -129,11 +129,19 @@ def _delete_dag_permissions(dag_id, security_manager):
129
129
security_manager .delete_permission (dag_action_name , dag_resource_name )
130
130
131
131
132
- def _create_dag_model (dag_id , session , security_manager ):
133
- bundle_name = "test_bundle"
132
+ def _create_dag_bundle (bundle_name , session ):
134
133
bundle = DagBundleModel (name = bundle_name )
135
134
session .add (bundle )
136
- session .flush ()
135
+ session .commit ()
136
+ return bundle
137
+
138
+
139
+ def _delete_dag_bundle (bundle_name , session ):
140
+ session .query (DagBundleModel ).filter (DagBundleModel .name == bundle_name ).delete ()
141
+ session .commit ()
142
+
143
+
144
+ def _create_dag_model (dag_id , bundle_name , session , security_manager ):
137
145
dag_model = DagModel (dag_id = dag_id , bundle_name = bundle_name )
138
146
session .add (dag_model )
139
147
session .commit ()
@@ -173,9 +181,12 @@ def _has_all_dags_access(user) -> bool:
173
181
174
182
@contextlib .contextmanager
175
183
def _create_dag_model_context (dag_id , session , security_manager ):
176
- dag = _create_dag_model (dag_id , session , security_manager )
184
+ bundle_name = "test_bundle"
185
+ _create_dag_bundle (bundle_name , session )
186
+ dag = _create_dag_model (dag_id , bundle_name , session , security_manager )
177
187
yield dag
178
188
_delete_dag_model (dag , session , security_manager )
189
+ _delete_dag_bundle (bundle_name , session )
179
190
180
191
181
192
@pytest .fixture (scope = "module" , autouse = True )
@@ -242,12 +253,15 @@ def role(request, app, security_manager):
242
253
@pytest .fixture
243
254
def mock_dag_models (request , session , security_manager ):
244
255
dags_ids = request .param
245
- dags = [_create_dag_model (dag_id , session , security_manager ) for dag_id in dags_ids ]
256
+ bundle_name = "test_bundle"
257
+ _create_dag_bundle (bundle_name , session )
258
+ dags = [_create_dag_model (dag_id , bundle_name , session , security_manager ) for dag_id in dags_ids ]
246
259
247
260
yield dags_ids
248
261
249
262
for dag in dags :
250
263
_delete_dag_model (dag , session , security_manager )
264
+ _delete_dag_bundle (bundle_name , session )
251
265
252
266
253
267
@pytest .fixture
@@ -1066,7 +1080,10 @@ def test_permissions_work_for_dags_with_dot_in_dagname(
1066
1080
security_manager .sync_perm_for_dag (dag2 .dag_id , access_control = {role_name : READ_WRITE })
1067
1081
assert_user_has_dag_perms (perms = ["GET" , "PUT" ], dag_id = dag_id , user = user )
1068
1082
assert_user_does_not_have_dag_perms (perms = ["GET" , "PUT" ], dag_id = dag_id_2 , user = user )
1083
+ # Clean up DAG models and bundle
1069
1084
session .query (DagModel ).delete ()
1085
+ session .query (DagBundleModel ).filter (DagBundleModel .name == bundle_name ).delete ()
1086
+ session .commit ()
1070
1087
1071
1088
1072
1089
@pytest .fixture
0 commit comments