|
14 | 14 |
|
15 | 15 | from py4j.protocol import Py4JJavaError |
16 | 16 |
|
| 17 | + |
17 | 18 | ################ |
18 | 19 | # DRIVER TESTS # |
19 | 20 | ################ |
@@ -166,6 +167,65 @@ def stageInfo(self): # noqa: N802 |
166 | 167 | assert mock_hub.kwargs["data"]["name"] == "run-job" |
167 | 168 |
|
168 | 169 |
|
| 170 | +def test_sentry_listener_on_stage_submitted_no_attempt_id(sentry_listener): |
| 171 | + listener = sentry_listener |
| 172 | + with patch.object(listener, "_add_breadcrumb") as mock_add_breadcrumb: |
| 173 | + |
| 174 | + class StageInfo: |
| 175 | + def stageId(self): # noqa: N802 |
| 176 | + return "sample-stage-id-submit" |
| 177 | + |
| 178 | + def name(self): |
| 179 | + return "run-job" |
| 180 | + |
| 181 | + def attemptNumber(self): # noqa: N802 |
| 182 | + return 14 |
| 183 | + |
| 184 | + class MockStageSubmitted: |
| 185 | + def stageInfo(self): # noqa: N802 |
| 186 | + stageinf = StageInfo() |
| 187 | + return stageinf |
| 188 | + |
| 189 | + mock_stage_submitted = MockStageSubmitted() |
| 190 | + listener.onStageSubmitted(mock_stage_submitted) |
| 191 | + |
| 192 | + mock_add_breadcrumb.assert_called_once() |
| 193 | + mock_hub = mock_add_breadcrumb.call_args |
| 194 | + |
| 195 | + assert mock_hub.kwargs["level"] == "info" |
| 196 | + assert "sample-stage-id-submit" in mock_hub.kwargs["message"] |
| 197 | + assert mock_hub.kwargs["data"]["attemptId"] == 14 |
| 198 | + assert mock_hub.kwargs["data"]["name"] == "run-job" |
| 199 | + |
| 200 | + |
| 201 | +def test_sentry_listener_on_stage_submitted_no_attempt_id_or_number(sentry_listener): |
| 202 | + listener = sentry_listener |
| 203 | + with patch.object(listener, "_add_breadcrumb") as mock_add_breadcrumb: |
| 204 | + |
| 205 | + class StageInfo: |
| 206 | + def stageId(self): # noqa: N802 |
| 207 | + return "sample-stage-id-submit" |
| 208 | + |
| 209 | + def name(self): |
| 210 | + return "run-job" |
| 211 | + |
| 212 | + class MockStageSubmitted: |
| 213 | + def stageInfo(self): # noqa: N802 |
| 214 | + stageinf = StageInfo() |
| 215 | + return stageinf |
| 216 | + |
| 217 | + mock_stage_submitted = MockStageSubmitted() |
| 218 | + listener.onStageSubmitted(mock_stage_submitted) |
| 219 | + |
| 220 | + mock_add_breadcrumb.assert_called_once() |
| 221 | + mock_hub = mock_add_breadcrumb.call_args |
| 222 | + |
| 223 | + assert mock_hub.kwargs["level"] == "info" |
| 224 | + assert "sample-stage-id-submit" in mock_hub.kwargs["message"] |
| 225 | + assert "attemptId" not in mock_hub.kwargs["data"] |
| 226 | + assert mock_hub.kwargs["data"]["name"] == "run-job" |
| 227 | + |
| 228 | + |
169 | 229 | @pytest.fixture |
170 | 230 | def get_mock_stage_completed(): |
171 | 231 | def _inner(failure_reason): |
@@ -282,71 +342,3 @@ def mock_main(): |
282 | 342 | "partitionId": "2", |
283 | 343 | "taskAttemptId": "3", |
284 | 344 | } |
285 | | - |
286 | | - |
287 | | -def test_sentry_listener_on_stage_submitted_no_attempt_id(sentry_listener): |
288 | | - listener = sentry_listener |
289 | | - with patch.object(listener, "_add_breadcrumb") as mock_add_breadcrumb: |
290 | | - |
291 | | - class StageInfo: |
292 | | - def stageId(self): # noqa: N802 |
293 | | - return "sample-stage-id-submit" |
294 | | - |
295 | | - def name(self): |
296 | | - return "run-job" |
297 | | - |
298 | | - def attemptId(self): # noqa: N802 |
299 | | - raise Py4JJavaError |
300 | | - |
301 | | - def attemptNumber(self): # noqa: N802 |
302 | | - return 14 |
303 | | - |
304 | | - class MockStageSubmitted: |
305 | | - def stageInfo(self): # noqa: N802 |
306 | | - stageinf = StageInfo() |
307 | | - return stageinf |
308 | | - |
309 | | - mock_stage_submitted = MockStageSubmitted() |
310 | | - listener.onStageSubmitted(mock_stage_submitted) |
311 | | - |
312 | | - mock_add_breadcrumb.assert_called_once() |
313 | | - mock_hub = mock_add_breadcrumb.call_args |
314 | | - |
315 | | - assert mock_hub.kwargs["level"] == "info" |
316 | | - assert "sample-stage-id-submit" in mock_hub.kwargs["message"] |
317 | | - assert mock_hub.kwargs["data"]["attemptId"] == 14 |
318 | | - assert mock_hub.kwargs["data"]["name"] == "run-job" |
319 | | - |
320 | | - |
321 | | -def test_sentry_listener_on_stage_submitted_no_attempt_id_or_number(sentry_listener): |
322 | | - listener = sentry_listener |
323 | | - with patch.object(listener, "_add_breadcrumb") as mock_add_breadcrumb: |
324 | | - |
325 | | - class StageInfo: |
326 | | - def stageId(self): # noqa: N802 |
327 | | - return "sample-stage-id-submit" |
328 | | - |
329 | | - def name(self): |
330 | | - return "run-job" |
331 | | - |
332 | | - def attemptId(self): # noqa: N802 |
333 | | - raise Py4JJavaError |
334 | | - |
335 | | - def attemptNumber(self): # noqa: N802 |
336 | | - raise Py4JJavaError |
337 | | - |
338 | | - class MockStageSubmitted: |
339 | | - def stageInfo(self): # noqa: N802 |
340 | | - stageinf = StageInfo() |
341 | | - return stageinf |
342 | | - |
343 | | - mock_stage_submitted = MockStageSubmitted() |
344 | | - listener.onStageSubmitted(mock_stage_submitted) |
345 | | - |
346 | | - mock_add_breadcrumb.assert_called_once() |
347 | | - mock_hub = mock_add_breadcrumb.call_args |
348 | | - |
349 | | - assert mock_hub.kwargs["level"] == "info" |
350 | | - assert "sample-stage-id-submit" in mock_hub.kwargs["message"] |
351 | | - assert "attemptId" not in mock_hub.kwargs["data"] |
352 | | - assert mock_hub.kwargs["data"]["name"] == "run-job" |
0 commit comments