Coverage for src / tracekit / compliance / __init__.py: 100%

5 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-11 23:04 +0000

1"""EMC/EMI compliance testing module. 

2 

3This module provides regulatory compliance testing capabilities including 

4limit masks, compliance testing, and report generation for FCC, CE/CISPR, 

5and MIL-STD standards. 

6 

7 

8Example: 

9 >>> import tracekit as tk 

10 >>> from tracekit.compliance import load_limit_mask, check_compliance, generate_compliance_report 

11 >>> 

12 >>> trace = tk.load('emissions.wfm') 

13 >>> mask = load_limit_mask('FCC_Part15_ClassB') 

14 >>> result = check_compliance(trace, mask) 

15 >>> generate_compliance_report(result, 'compliance_report.html') 

16""" 

17 

18from tracekit.compliance.advanced import ( 

19 ComplianceTestConfig, 

20 ComplianceTestRunner, 

21 ComplianceTestSuite, 

22 InterpolationMethod, 

23 LimitInterpolator, 

24 QPDetectorBand, 

25 QPDetectorParams, 

26 QuasiPeakDetector, 

27 interpolate_limit, 

28) 

29from tracekit.compliance.masks import ( 

30 AVAILABLE_MASKS, 

31 LimitMask, 

32 create_custom_mask, 

33 load_limit_mask, 

34) 

35from tracekit.compliance.reporting import ( 

36 ComplianceReportFormat, 

37 generate_compliance_report, 

38) 

39from tracekit.compliance.testing import ( 

40 ComplianceResult, 

41 ComplianceViolation, 

42 DetectorType, 

43 check_compliance, 

44) 

45 

46__all__ = [ 

47 # Masks (EMC-001) 

48 "AVAILABLE_MASKS", 

49 "ComplianceReportFormat", 

50 "ComplianceResult", 

51 # Advanced Compliance (COMP-005, 006, 007) 

52 "ComplianceTestConfig", 

53 "ComplianceTestRunner", 

54 "ComplianceTestSuite", 

55 "ComplianceViolation", 

56 "DetectorType", 

57 "InterpolationMethod", 

58 "LimitInterpolator", 

59 "LimitMask", 

60 "QPDetectorBand", 

61 "QPDetectorParams", 

62 "QuasiPeakDetector", 

63 # Testing (EMC-002) 

64 "check_compliance", 

65 "create_custom_mask", 

66 # Reporting (EMC-003) 

67 "generate_compliance_report", 

68 "interpolate_limit", 

69 "load_limit_mask", 

70]