|
8 | 8 |
|
9 | 9 | from rpdk.core.cli import EXIT_UNHANDLED_EXCEPTION, main
|
10 | 10 | from rpdk.core.contract.interface import Action, HookInvocationPoint
|
11 |
| -from rpdk.core.invoke import _needs_reinvocation |
| 11 | +from rpdk.core.invoke import _needs_reinvocation, prepare_payload_for_reinvocation |
12 | 12 | from rpdk.core.project import ARTIFACT_TYPE_HOOK, ARTIFACT_TYPE_RESOURCE, Project
|
13 | 13 |
|
14 | 14 | ACTIONS = list(Action.__members__)
|
@@ -351,6 +351,32 @@ def test_needs_reinvocation(max_reinvoke, current_invocation, result):
|
351 | 351 | assert _needs_reinvocation(max_reinvoke, current_invocation) is result
|
352 | 352 |
|
353 | 353 |
|
| 354 | +# Test prepare_payload_for_reinvocation directly here |
| 355 | +def test_prepare_payload_for_reinvocation(): |
| 356 | + assert prepare_payload_for_reinvocation( |
| 357 | + {}, {"callbackContext": {"foo": "bar"}}, ARTIFACT_TYPE_RESOURCE |
| 358 | + ) == {"callbackContext": {"foo": "bar"}} |
| 359 | + assert prepare_payload_for_reinvocation( |
| 360 | + {"requestData": {}}, {"callbackContext": {"foo": "bar"}}, ARTIFACT_TYPE_RESOURCE |
| 361 | + ) == {"callbackContext": {"foo": "bar"}, "requestData": {}} |
| 362 | + assert prepare_payload_for_reinvocation( |
| 363 | + {"requestData": {}}, |
| 364 | + {"callbackContext": {"foo": "bar"}, "resourceModel": {"foz": "baz"}}, |
| 365 | + ARTIFACT_TYPE_RESOURCE, |
| 366 | + ) == { |
| 367 | + "callbackContext": {"foo": "bar"}, |
| 368 | + "requestData": {"resourceProperties": {"foz": "baz"}}, |
| 369 | + } |
| 370 | + assert prepare_payload_for_reinvocation( |
| 371 | + {"requestData": {"resourceProperties": {}}}, |
| 372 | + {"callbackContext": {"foo": "bar"}, "resourceModel": {"foz": "baz"}}, |
| 373 | + ARTIFACT_TYPE_RESOURCE, |
| 374 | + ) == { |
| 375 | + "callbackContext": {"foo": "bar"}, |
| 376 | + "requestData": {"resourceProperties": {"foz": "baz"}}, |
| 377 | + } |
| 378 | + |
| 379 | + |
354 | 380 | def _invoke_and_expect_resource(status, resource_payload_path, command, *args):
|
355 | 381 | (
|
356 | 382 | mock_project,
|
|
0 commit comments