@@ -44,7 +44,7 @@ async def test_maintainer_plus_can_copy_connection_with_delete_source(
4444 "user" : "user" ,
4545 "password" : "password" ,
4646 }
47- assert not current . is_deleted
47+ assert current is not None
4848
4949 query_copy_not_exist = select (Connection ).filter (
5050 Connection .group_id == empty_group .id ,
@@ -73,14 +73,13 @@ async def test_maintainer_plus_can_copy_connection_with_delete_source(
7373 }
7474 assert result .status_code == 200
7575
76- await session .refresh (group_connection .connection )
7776 query_prev_row = select (Connection ).where (Connection .id == curr_id )
7877 result_prev_row = await session .scalars (query_prev_row )
79- origin = result_prev_row .one ()
78+ origin = result_prev_row .first ()
8079
8180 q_creds_origin = select (AuthData ).where (AuthData .connection_id == curr_id )
8281 creds_origin = await session .scalars (q_creds_origin )
83- creds_origin = creds_origin .one ()
82+ creds_origin = creds_origin .first ()
8483
8584 query_new_row = select (Connection ).filter (
8685 Connection .group_id == empty_group .id ,
@@ -94,14 +93,25 @@ async def test_maintainer_plus_can_copy_connection_with_delete_source(
9493 creds_new = creds_new .one_or_none ()
9594
9695 # Assert
97- assert origin .id == curr_id
98- assert decrypt_auth_data (creds_origin .value , settings ) == {
99- "type" : "postgres" ,
100- "user" : "user" ,
101- "password" : "password" ,
102- }
103- assert origin .is_deleted == is_delete_source
104- assert not new .is_deleted
96+
97+ if not is_delete_source :
98+ assert origin .id == curr_id
99+ assert decrypt_auth_data (creds_origin .value , settings ) == {
100+ "type" : "postgres" ,
101+ "user" : "user" ,
102+ "password" : "password" ,
103+ }
104+
105+ session .expunge (current )
106+ origin = await session .get (Connection , current .id )
107+ if is_delete_source :
108+ # Assert that origin connection was deleted
109+ assert origin is None
110+ else :
111+ # Assert that origin connection was not deleted
112+ assert origin is not None
113+
114+ assert new is not None
105115 assert not creds_new
106116
107117
@@ -132,7 +142,7 @@ async def test_superuser_can_copy_connection(
132142 "user" : "user" ,
133143 "password" : "password" ,
134144 }
135- assert not current . is_deleted
145+ assert current is not None
136146
137147 query_copy_not_exist = select (Connection ).filter (
138148 Connection .group_id == empty_group .id ,
@@ -161,37 +171,36 @@ async def test_superuser_can_copy_connection(
161171 }
162172 assert result .status_code == 200
163173
164- query_prev_row = select (Connection ).where (Connection .id == curr_id )
165- result_prev_row = await session .scalars (query_prev_row )
166- origin = result_prev_row .one ()
167174 query_new_row = select (Connection ).filter (
168175 Connection .group_id == empty_group .id ,
169176 Connection .name == group_connection .name ,
170177 )
171178 result_new_row = await session .scalars (query_new_row )
172179 new = result_new_row .one () # copied
173180
174- # Assert
175- await session .refresh (group_connection .connection )
176-
177- q_creds_origin = select (AuthData ).where (AuthData .connection_id == origin .id )
181+ q_creds_origin = select (AuthData ).where (AuthData .connection_id == current .id )
178182 creds_origin = await session .scalars (q_creds_origin )
179- creds_origin = creds_origin .one ()
183+ creds_origin = creds_origin .first ()
180184
181185 q_creds_new = select (AuthData ).where (AuthData .connection_id == new .id )
182186 creds_new = await session .scalars (q_creds_new )
183187 creds_new = creds_new .one_or_none ()
184188
185- assert origin .id == curr_id
186- assert origin .group_id == curr_group_id
187- assert decrypt_auth_data (creds_origin .value , settings ) == {
188- "type" : "postgres" ,
189- "user" : "user" ,
190- "password" : "password" ,
191- }
192- assert origin .is_deleted == is_delete_source
193- assert not new .is_deleted
194- assert not creds_new
189+ # Assert
190+ session .expunge (current )
191+ origin = await session .get (Connection , current .id )
192+ if is_delete_source :
193+ # Assert that origin connection was deleted
194+ assert origin is None
195+ else :
196+ assert origin .id == curr_id
197+ assert origin .group_id == curr_group_id
198+ assert decrypt_auth_data (creds_origin .value , settings ) == {
199+ "type" : "postgres" ,
200+ "user" : "user" ,
201+ "password" : "password" ,
202+ }
203+ assert not creds_new
195204
196205
197206async def test_unauthorized_user_cannot_copy_connection (
@@ -291,7 +300,7 @@ async def test_not_in_both_groups_user_can_not_copy_connection(
291300 "user" : "user" ,
292301 "password" : "password" ,
293302 }
294- assert not current . is_deleted
303+ assert current is not None
295304
296305 query_copy_not_exist = select (Connection ).filter (
297306 Connection .group_id == empty_group .id ,
@@ -349,7 +358,7 @@ async def test_groupless_user_can_not_copy_connection(
349358 "user" : "user" ,
350359 "password" : "password" ,
351360 }
352- assert not current . is_deleted
361+ assert current is not None
353362
354363 query_copy_not_exist = select (Connection ).filter (
355364 Connection .group_id == empty_group .id ,
0 commit comments