Test consistent mode with named types.
()
| 605 | |
| 606 | |
| 607 | def test_consistent_named(): |
| 608 | """Test consistent mode with named types.""" |
| 609 | data_file = get_data_file() |
| 610 | with open(data_file, "rb") as f: |
| 611 | data_bytes = f.read() |
| 612 | buffer = pyfory.Buffer(data_bytes) |
| 613 | |
| 614 | fory = pyfory.Fory(xlang=True, compatible=False) |
| 615 | fory.register_type(Color, name="color") |
| 616 | fory.register_type(MyStruct, name="my_struct") |
| 617 | fory.register_type(MyExt, name="my_ext", serializer=MyExtSerializer(fory.type_resolver, MyExt)) |
| 618 | |
| 619 | color = Color.White |
| 620 | my_struct = MyStruct(id=42) |
| 621 | my_ext = MyExt(id=43) |
| 622 | |
| 623 | for _ in range(3): |
| 624 | assert fory.deserialize(buffer) == color |
| 625 | for _ in range(3): |
| 626 | assert fory.deserialize(buffer) == my_struct |
| 627 | for _ in range(3): |
| 628 | assert fory.deserialize(buffer) == my_ext |
| 629 | |
| 630 | new_buffer = pyfory.Buffer.allocate(256) |
| 631 | for _ in range(3): |
| 632 | fory.serialize(color, buffer=new_buffer) |
| 633 | for _ in range(3): |
| 634 | fory.serialize(my_struct, buffer=new_buffer) |
| 635 | for _ in range(3): |
| 636 | fory.serialize(my_ext, buffer=new_buffer) |
| 637 | |
| 638 | with open(data_file, "wb") as f: |
| 639 | f.write(new_buffer.get_bytes(0, new_buffer.get_writer_index())) |
| 640 | |
| 641 | |
| 642 | def test_struct_version_check(): |
nothing calls this directly
no test coverage detected