Coverage for src/fluree_py/http/client.py: 100%

9 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-04-02 03:03 +0000

1from dataclasses import dataclass 

2 

3from fluree_py.http.ledger import LedgerSelected 

4from fluree_py.http.protocol.ledger import SupportsLedgerOperations 

5from fluree_py.types.common import LedgerName 

6 

7 

8@dataclass(frozen=True, kw_only=True) 

9class FlureeClient: 

10 """Client for interacting with Fluree databases.""" 

11 

12 base_url: str 

13 

14 def with_ledger(self, ledger: LedgerName) -> SupportsLedgerOperations: 

15 """Select a ledger to operate on.""" 

16 return LedgerSelected(base_url=self.base_url, ledger=ledger)