Coverage for /Users/ajo/work/jumpstarter/jumpstarter/packages/jumpstarter/jumpstarter/common/serde.py: 100%

8 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-05-06 10:21 +0200

1from typing import Any 

2 

3from google.protobuf import json_format, struct_pb2 

4from pydantic import TypeAdapter 

5 

6adapter = TypeAdapter(Any) 

7 

8 

9def encode_value(v: Any): 

10 return json_format.ParseDict(adapter.dump_python(v, mode="json"), struct_pb2.Value()) 

11 

12 

13def decode_value(v: struct_pb2.Value) -> Any: 

14 return adapter.validate_python(json_format.MessageToDict(v))