Coverage for flogin/jsonrpc/requests.py: 57%

14 statements  

« prev     ^ index     » next       coverage.py v7.9.2, created at 2025-07-03 22:51 +0000

1from __future__ import annotations 

2 

3from typing import TYPE_CHECKING, Any 

4 

5from .base_object import ToMessageBase 

6 

7if TYPE_CHECKING: 

8 from .._types.jsonrpc.request import Request as RequestPayload 

9 

10__all__ = ("Request",) 

11 

12 

13class Request(ToMessageBase["RequestPayload"]): 

14 __slots__ = "id", "method", "params" 

15 

16 def __init__(self, method: str, id: int, params: list[Any] | None = None) -> None: 

17 self.method = method 

18 self.id = id 

19 self.params = params 

20 

21 def to_dict(self) -> RequestPayload: 

22 x = super().to_dict() 

23 x["jsonrpc"] = "2.0" 

24 return x