Skip to content

Commit 3310114

Browse files
committed
add callback test
1 parent 3af994e commit 3310114

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

tests/strands/event_loop/test_streaming.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -493,3 +493,34 @@ def callback_handler(**kwargs):
493493
None,
494494
"test prompt",
495495
)
496+
497+
498+
def test_process_stream_redacted_content_callback():
499+
callback_args = []
500+
501+
def callback_handler(**kwargs):
502+
callback_args.append(kwargs)
503+
504+
response = [
505+
{"messageStart": {"role": "assistant"}},
506+
{"contentBlockStart": {"start": {}}},
507+
{"contentBlockDelta": {"delta": {"reasoningContent": {"redactedContent": b"encoded_data_1"}}}},
508+
{"contentBlockDelta": {"delta": {"reasoningContent": {"redactedContent": b"encoded_data_2"}}}},
509+
{"contentBlockStop": {}},
510+
{"messageStop": {"stopReason": "end_turn"}},
511+
]
512+
513+
messages = [{"role": "user", "content": [{"text": "Some input!"}]}]
514+
515+
strands.event_loop.streaming.process_stream(response, callback_handler, messages)
516+
517+
redacted_callbacks = [args for args in callback_args if "redactedContent" in args]
518+
assert len(redacted_callbacks) == 2
519+
520+
assert redacted_callbacks[0]["redactedContent"] == b"encoded_data_1"
521+
assert redacted_callbacks[0]["delta"] == {"reasoningContent": {"redactedContent": b"encoded_data_1"}}
522+
assert redacted_callbacks[0]["reasoning"] is True
523+
524+
assert redacted_callbacks[1]["redactedContent"] == b"encoded_data_2"
525+
assert redacted_callbacks[1]["delta"] == {"reasoningContent": {"redactedContent": b"encoded_data_2"}}
526+
assert redacted_callbacks[1]["reasoning"] is True

0 commit comments

Comments
 (0)