Coverage for src / rhiza / models / _git / _base.py: 100%

3 statements  

« prev     ^ index     » next       coverage.py v7.14.0, created at 2026-07-16 12:51 +0000

1"""Shared attribute declarations for the :class:`GitContext` mixins. 

2 

3The git engine is split across focused mixin modules (:mod:`remote`, 

4:mod:`diff`, :mod:`merge`) that are composed into the concrete 

5:class:`~rhiza.models._git.context.GitContext` dataclass. Each mixin needs to 

6reference ``self.executable`` and ``self.env``; declaring them once here gives 

7the type checker a single source of truth while the real fields live on the 

8concrete dataclass. 

9""" 

10 

11 

12class GitContextBase: 

13 """Declares the attributes every git mixin relies on. 

14 

15 Attributes: 

16 executable: Absolute path to the git binary. 

17 env: Environment variables passed to every git subprocess. 

18 """ 

19 

20 executable: str 

21 env: dict[str, str]