@@ -48,19 +48,12 @@ def mock_config(
48
48
form : dict [str , Any ] = {},
49
49
timestamp : datetime .datetime | None = None ,
50
50
):
51
- if timestamp is None :
52
- adaptor_properties = database .AdaptorProperties (
53
- hash = hash ,
54
- config = config ,
55
- form = form ,
56
- )
57
- else :
58
- adaptor_properties = database .AdaptorProperties (
59
- hash = hash ,
60
- config = config ,
61
- form = form ,
62
- timestamp = timestamp ,
63
- )
51
+ adaptor_properties = database .AdaptorProperties (
52
+ hash = hash ,
53
+ config = config ,
54
+ form = form ,
55
+ timestamp = timestamp ,
56
+ )
64
57
return adaptor_properties
65
58
66
59
@@ -102,14 +95,14 @@ def test_init_db(postgresql: Connection[str], mocker) -> None:
102
95
def prepare_db (
103
96
session_obj ,
104
97
num_old_props_used_by_old ,
105
- num_old_props_used_by_recent ,
106
98
num_recent_props_used_by_recent ,
107
99
recent_days = 3 ,
108
100
old_days = 370 ,
109
101
):
110
102
now = sa .func .now ()
111
103
old_date = now - datetime .timedelta (days = old_days )
112
104
recent_date = now - datetime .timedelta (days = recent_days )
105
+
113
106
with session_obj () as session :
114
107
# initialize
115
108
session .query (database .SystemRequest ).delete ()
@@ -121,35 +114,25 @@ def prepare_db(
121
114
adaptor_properties = mock_config (hash = old_hash , timestamp = old_date )
122
115
session .add (adaptor_properties )
123
116
request = mock_system_request (
124
- adaptor_properties_hash = old_hash , finished_at = old_date
125
- )
126
- session .add (request )
127
- event = database .Events (request_uid = request .request_uid )
128
- session .add (event )
129
- # add old properties with recent requests
130
- for x in range (num_old_props_used_by_recent ):
131
- old_hash2 = f"old_hash_{ x } _with_new_request"
132
- adaptor_properties = mock_config (hash = old_hash2 , timestamp = old_date )
133
- session .add (adaptor_properties )
134
- request = mock_system_request (
135
- adaptor_properties_hash = old_hash2 , finished_at = recent_date
117
+ adaptor_properties_hash = old_hash , created_at = old_date
136
118
)
137
119
session .add (request )
138
120
event = database .Events (request_uid = request .request_uid )
139
121
session .add (event )
122
+ session .commit ()
140
123
# add recent properties with recent requests
141
124
for x in range (num_recent_props_used_by_recent ):
142
125
new_hash = f"new_hash_{ x } "
143
126
adaptor_properties = mock_config (hash = new_hash , timestamp = recent_date )
144
127
session .add (adaptor_properties )
145
128
request = mock_system_request (
146
- adaptor_properties_hash = new_hash , finished_at = recent_date
129
+ adaptor_properties_hash = new_hash , created_at = recent_date
147
130
)
148
131
session .add (request )
149
132
event = database .Events (request_uid = request .request_uid )
150
133
session .add (event )
134
+ session .commit ()
151
135
# not existing case of recent properties with old requests
152
- session .commit ()
153
136
154
137
155
138
def test_remove_old_records (session_obj : sa .orm .sessionmaker ):
@@ -159,7 +142,6 @@ def test_remove_old_records(session_obj: sa.orm.sessionmaker):
159
142
prepare_db (
160
143
session_obj ,
161
144
num_old_props_used_by_old = 0 ,
162
- num_old_props_used_by_recent = 6 ,
163
145
num_recent_props_used_by_recent = 5 ,
164
146
)
165
147
result = runner .invoke (
@@ -171,9 +153,9 @@ def test_remove_old_records(session_obj: sa.orm.sessionmaker):
171
153
all_requests = session .query (database .SystemRequest ).all ()
172
154
all_events = session .query (database .Events ).all ()
173
155
all_props = session .query (database .AdaptorProperties ).all ()
174
- assert len (all_requests ) == 11
175
- assert len (all_events ) == 11
176
- assert len (all_props ) == 11
156
+ assert len (all_requests ) == 5
157
+ assert len (all_events ) == 5
158
+ assert len (all_props ) == 5
177
159
178
160
# test remove all (most recent is 3 days old)
179
161
result = runner .invoke (
@@ -199,7 +181,6 @@ def test_remove_old_records(session_obj: sa.orm.sessionmaker):
199
181
prepare_db (
200
182
session_obj ,
201
183
num_old_props_used_by_old = 10 ,
202
- num_old_props_used_by_recent = 0 ,
203
184
num_recent_props_used_by_recent = 5 ,
204
185
)
205
186
result = runner .invoke (
@@ -214,23 +195,3 @@ def test_remove_old_records(session_obj: sa.orm.sessionmaker):
214
195
assert len (all_requests ) == 5
215
196
assert len (all_events ) == 5
216
197
assert len (all_props ) == 5
217
-
218
- # test remove only some requests (some old props have recent requests)
219
- prepare_db (
220
- session_obj ,
221
- num_old_props_used_by_old = 10 ,
222
- num_old_props_used_by_recent = 3 ,
223
- num_recent_props_used_by_recent = 5 ,
224
- )
225
- result = runner .invoke (
226
- entry_points .app ,
227
- ["remove-old-requests" , "--connection-string" , connection_string ],
228
- )
229
- assert result .exit_code == 0
230
- with session_obj () as session :
231
- all_requests = session .query (database .SystemRequest ).all ()
232
- all_events = session .query (database .Events ).all ()
233
- all_props = session .query (database .AdaptorProperties ).all ()
234
- assert len (all_requests ) == 8
235
- assert len (all_events ) == 8
236
- assert len (all_props ) == 8
0 commit comments