MCPcopy Create free account
hub / github.com/apache/fory / runFileExampleRoundTrip

Function runFileExampleRoundTrip

integration_tests/idl_tests/go/idl_roundtrip_test.go:583–626  ·  view source on GitHub ↗
(
	t *testing.T,
	f *fory.Fory,
	message example.ExampleMessage,
	unionValue example.ExampleMessageUnion,
)

Source from the content-addressed store, hash-verified

581}
582
583func runFileExampleRoundTrip(
584 t *testing.T,
585 f *fory.Fory,
586 message example.ExampleMessage,
587 unionValue example.ExampleMessageUnion,
588) {
589 if dataFile := os.Getenv("DATA_FILE_EXAMPLE"); dataFile != "" {
590 payload, err := os.ReadFile(dataFile)
591 if err != nil {
592 t.Fatalf("read example data file: %v", err)
593 }
594 var decoded example.ExampleMessage
595 if err := f.Deserialize(payload, &decoded); err != nil {
596 t.Fatalf("deserialize example peer payload: %v", err)
597 }
598 assertExampleMessageEqual(t, message, decoded)
599 out, err := f.Serialize(&decoded)
600 if err != nil {
601 t.Fatalf("serialize example peer payload: %v", err)
602 }
603 if err := os.WriteFile(dataFile, out, 0o644); err != nil {
604 t.Fatalf("write example data file: %v", err)
605 }
606 }
607
608 if dataFile := os.Getenv("DATA_FILE_EXAMPLE_UNION"); dataFile != "" {
609 payload, err := os.ReadFile(dataFile)
610 if err != nil {
611 t.Fatalf("read example union data file: %v", err)
612 }
613 var decoded example.ExampleMessageUnion
614 if err := f.Deserialize(payload, &decoded); err != nil {
615 t.Fatalf("deserialize example union peer payload: %v", err)
616 }
617 assertExampleUnionEqual(t, unionValue, decoded)
618 out, err := f.Serialize(&decoded)
619 if err != nil {
620 t.Fatalf("serialize example union peer payload: %v", err)
621 }
622 if err := os.WriteFile(dataFile, out, 0o644); err != nil {
623 t.Fatalf("write example union data file: %v", err)
624 }
625 }
626}
627
628func assertExampleMessageEqual(t *testing.T, expected, actual example.ExampleMessage) {
629 t.Helper()

Callers 1

runAddressBookRoundTripFunction · 0.85

Calls 4

assertExampleUnionEqualFunction · 0.85
DeserializeMethod · 0.45
SerializeMethod · 0.45

Tested by

no test coverage detected