Skip to content

Commit 37d7dbc

Browse files
committed
chore: add run-time type-check to proto_dto
1 parent 360dd5f commit 37d7dbc

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

archipy/models/dtos/base_protobuf_dto.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@ def from_proto(cls, request: Message) -> Self:
3232
if cls._proto_class is None:
3333
raise NotImplementedError(f"{cls.__name__} is not mapped to a proto class.")
3434

35+
if not isinstance(request, cls._proto_class):
36+
raise TypeError(
37+
f"{cls.__name__}.from_proto expected {cls._proto_class.__name__}, "
38+
f"but got {type(request).__name__} instead."
39+
)
40+
3541
input_data = MessageToDict(
3642
message=request,
3743
always_print_fields_with_no_presence=True,

0 commit comments

Comments
 (0)