Coverage for C: \ Users \ peaco \ OneDrive \ Documents \ GitHub \ mt_metadata \ mt_metadata \ timeseries \ data_logger.py: 100%

9 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-10 00:11 -0800

1# ===================================================== 

2# Imports 

3# ===================================================== 

4from typing import Annotated 

5 

6from pydantic import Field 

7 

8from mt_metadata.common import Instrument, Software 

9from mt_metadata.timeseries import Battery, TimingSystem 

10 

11 

12# ===================================================== 

13 

14 

15class DataLogger(Instrument): 

16 timing_system: Annotated[ 

17 TimingSystem, 

18 Field( 

19 default_factory=TimingSystem, 

20 description="Timing system of the data logger.", 

21 alias=None, 

22 json_schema_extra={ 

23 "units": None, 

24 "required": False, 

25 "examples": "TimingSystem()", 

26 }, 

27 ), 

28 ] 

29 firmware: Annotated[ 

30 Software, 

31 Field( 

32 default_factory=Software, 

33 description="Firmware of the data logger.", 

34 alias=None, 

35 json_schema_extra={ 

36 "units": None, 

37 "required": False, 

38 "examples": "Software()", 

39 }, 

40 ), 

41 ] 

42 power_source: Annotated[ 

43 Battery, 

44 Field( 

45 default_factory=Battery, 

46 description="Power source of the data logger.", 

47 alias=None, 

48 json_schema_extra={ 

49 "units": None, 

50 "required": False, 

51 "examples": "Battery()", 

52 }, 

53 ), 

54 ] 

55 data_storage: Annotated[ 

56 Instrument, 

57 Field( 

58 default_factory=Instrument, 

59 description="Data storage of the data logger.", 

60 alias=None, 

61 json_schema_extra={ 

62 "units": None, 

63 "required": False, 

64 "examples": "Instrument()", 

65 }, 

66 ), 

67 ]