Coverage for src/bluetooth_sig/gatt/services/body_composition.py: 100%

6 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-10-30 00:10 +0000

1"""Body Composition Service implementation.""" 

2 

3from __future__ import annotations 

4 

5from typing import ClassVar 

6 

7from ..characteristics.registry import CharacteristicName 

8from .base import BaseGattService 

9 

10 

11class BodyCompositionService(BaseGattService): 

12 """Body Composition Service implementation (0x181B). 

13 

14 Used for smart scale devices that measure body composition metrics 

15 including body fat percentage, muscle mass, bone mass, and water 

16 percentage. Contains Body Composition Measurement and Body 

17 Composition Feature characteristics. 

18 """ 

19 

20 service_characteristics: ClassVar[dict[CharacteristicName, bool]] = { 

21 CharacteristicName.BODY_COMPOSITION_MEASUREMENT: True, # required 

22 CharacteristicName.BODY_COMPOSITION_FEATURE: False, # optional 

23 }