3535 TextPart ,
3636)
3737
38-
3938def test_to_sdk_task_state () -> None :
4039 assert (
4140 to_sdk_task_state (vertexai_types .A2aTaskState .STATE_UNSPECIFIED )
@@ -317,23 +316,11 @@ def test_sdk_part_text_conversion_round_trip() -> None:
317316
318317
319318def test_sdk_part_data_conversion_round_trip () -> None :
320- # A DataPart is converted to `inline_data` in Vertex AI, which lacks the original
321- # `DataPart` vs `FilePart` distinction. When reading it back from the stored
322- # protocol format, it becomes a `FilePart` with base64-encoded `FileWithBytes`
323- # and `mime_type="application/json"`.
324319 sdk_part = Part (root = DataPart (data = {'key' : 'value' }))
325320 stored_part = to_stored_part (sdk_part )
326- round_trip_sdk_part = to_sdk_part (stored_part )
321+ round_trip_sdk_part = to_sdk_part (stored_part , part_metadata = None , part_type = 'data' )
327322
328- expected_b64 = base64 .b64encode (b'{"key": "value"}' ).decode ('utf-8' )
329- assert round_trip_sdk_part == Part (
330- root = FilePart (
331- file = FileWithBytes (
332- bytes = expected_b64 ,
333- mime_type = 'application/json' ,
334- )
335- )
336- )
323+ assert round_trip_sdk_part == sdk_part
337324
338325
339326def test_sdk_part_file_bytes_conversion_round_trip () -> None :
@@ -365,16 +352,6 @@ def test_sdk_part_file_uri_conversion_round_trip() -> None:
365352 assert round_trip_sdk_part == sdk_part
366353
367354
368- def test_sdk_artifact_conversion_round_trip () -> None :
369- sdk_artifact = Artifact (
370- artifact_id = 'art-123' ,
371- parts = [Part (root = TextPart (text = 'part_1' ))],
372- )
373- stored_artifact = to_stored_artifact (sdk_artifact )
374- round_trip_sdk_artifact = to_sdk_artifact (stored_artifact )
375- assert round_trip_sdk_artifact == sdk_artifact
376-
377-
378355def test_sdk_task_conversion_round_trip () -> None :
379356 sdk_task = Task (
380357 id = 'task-1' ,
@@ -408,7 +385,8 @@ def test_sdk_task_conversion_round_trip() -> None:
408385 assert round_trip_sdk_task .artifacts == sdk_task .artifacts
409386 assert round_trip_sdk_task .history == []
410387
411- def test_artifact_conversion_round_trip () -> None :
388+
389+ def test_stored_artifact_conversion_round_trip () -> None :
412390 """Test converting an Artifact to TaskArtifact and back restores everything."""
413391 original_artifact = Artifact (
414392 artifact_id = 'art123' ,
@@ -454,13 +432,11 @@ def test_artifact_conversion_round_trip() -> None:
454432 assert restored_artifact .parts [1 ].root .metadata is None
455433
456434
457- def test_message_conversion_round_trip () -> None :
435+ def test_stored_message_conversion_round_trip () -> None :
458436 """Test converting a Message to TaskMessage and back restores everything."""
459437 original_message = Message (
460438 message_id = 'msg456' ,
461439 role = Role .agent ,
462- context_id = 'ctx1' ,
463- task_id = 'tsk1' ,
464440 reference_task_ids = ['tsk2' , 'tsk3' ],
465441 extensions = ['ext_msg' ],
466442 metadata = {'msg_meta' : 42 },
@@ -482,8 +458,6 @@ def test_message_conversion_round_trip() -> None:
482458
483459 assert restored_message .message_id == original_message .message_id
484460 assert restored_message .role == original_message .role
485- # context_id and task_id are not serialized via Message metadata in Go implementation but via Task,
486- # but reference_task_ids and extensions ARE part of Message metadata.
487461 assert (
488462 restored_message .reference_task_ids
489463 == original_message .reference_task_ids
0 commit comments