Coverage for python/pyairflowtester/__init__.py: 100%
25 statements
« prev ^ index » next coverage.py v7.16.1, created at 2026-09-19 20:43 +0530
« prev ^ index » next coverage.py v7.16.1, created at 2026-09-19 20:43 +0530
1"""
2PyAirflowTester: Unified Airflow + dbt Reliability Platform
4A correlation-first reliability and quality platform that combines static analysis,
5runtime monitoring, and intelligent correlation to prevent data pipeline failures.
6"""
8__version__ = "0.3.1"
9__author__ = "PyAirflowTester Contributors"
10__license__ = "SSPL-1.0"
12try:
13 from pyairflowtester._core import (
14 PyCategory,
15 PyDagDefinition,
16 PyDagParser,
17 PyDbtModel,
18 PyDbtParser,
19 PyDbtProject,
20 PyDbtTest,
21 PyExecutionMode,
22 PyRule,
23 PyRuleContext,
24 PyRuleEngine,
25 PyRuleViolation,
26 PyScorer,
27 PySeverity,
28 evaluate_rules,
29 )
30except ImportError:
31 # Fallback if Rust extension not available
32 PyRule = None
33 PyRuleViolation = None
34 evaluate_rules = None
35 PySeverity = None
36 PyCategory = None
37 PyExecutionMode = None
38 PyRuleContext = None
39 PyRuleEngine = None
40 PyDagDefinition = None
41 PyDagParser = None
42 PyDbtModel = None
43 PyDbtTest = None
44 PyDbtProject = None
45 PyDbtParser = None
46 PyScorer = None
48from pyairflowtester.analyzer import Analyzer, AnalyzerNotImplementedError
49from pyairflowtester.report import ReportGenerator
50from pyairflowtester.scanner import Scanner
52__all__ = [
53 "Scanner",
54 "Analyzer",
55 "AnalyzerNotImplementedError",
56 "ReportGenerator",
57 "PyRule",
58 "PyRuleViolation",
59 "evaluate_rules",
60 "PySeverity",
61 "PyCategory",
62 "PyExecutionMode",
63 "PyRuleContext",
64 "PyRuleEngine",
65 "PyDagDefinition",
66 "PyDagParser",
67 "PyDbtModel",
68 "PyDbtTest",
69 "PyDbtProject",
70 "PyDbtParser",
71 "PyScorer",
72]