Coverage report:
83%
hide covered
Files
Functions
Classes
coverage.py v7.13.5
, created at 2026-04-01 00:33 -0400
Statements
Branches
Total
File
function
coverage
statements
missing
excluded
coverage
branches
partial
coverage
sygaldry / __init__.py
load
100%
1
0
0
100%
0
0
100%
sygaldry / __init__.py
(no function)
90%
10
1
0
50%
2
1
83%
sygaldry / __main__.py
(no function)
0%
2
2
0
100%
0
0
0%
sygaldry / artificery.py
_set_by_path
100%
7
0
0
100%
4
0
100%
sygaldry / artificery.py
load_config_file
100%
2
0
0
100%
0
0
100%
sygaldry / artificery.py
ArtificeryLoader.__init__
100%
1
0
0
100%
0
0
100%
sygaldry / artificery.py
ArtificeryLoader.load
100%
1
0
0
100%
0
0
100%
sygaldry / artificery.py
resolve_config
100%
3
0
0
100%
0
0
100%
sygaldry / artificery.py
Artificery.__init__
100%
13
0
0
100%
2
0
100%
sygaldry / artificery.py
Artificery.config
100%
3
0
0
100%
2
0
100%
sygaldry / artificery.py
Artificery._source_label
80%
5
1
0
75%
4
1
78%
sygaldry / artificery.py
Artificery._prepare
80%
10
2
0
67%
6
2
75%
sygaldry / artificery.py
Artificery._load_and_merge
100%
7
0
0
100%
2
0
100%
sygaldry / artificery.py
Artificery._apply_uses
100%
7
0
0
100%
4
0
100%
sygaldry / artificery.py
Artificery._apply_overrides
100%
3
0
0
100%
2
0
100%
sygaldry / artificery.py
Artificery.resolve
100%
7
0
0
100%
0
0
100%
sygaldry / artificery.py
Artificery._validate_schema
85%
13
2
0
86%
14
2
85%
sygaldry / artificery.py
Artificery._validate_refs
81%
16
3
0
83%
12
2
82%
sygaldry / artificery.py
Artificery._resolve_value
86%
7
1
0
83%
6
1
85%
sygaldry / artificery.py
Artificery._resolve_dict
100%
14
0
0
100%
12
0
100%
sygaldry / artificery.py
Artificery._resolve_ref
73%
11
3
0
83%
6
1
76%
sygaldry / artificery.py
Artificery._resolve_top_level
92%
12
1
0
83%
6
1
89%
sygaldry / artificery.py
Artificery._resolve_entries
68%
19
6
0
60%
10
4
66%
sygaldry / artificery.py
Artificery._resolve_func
75%
8
2
0
100%
2
0
80%
sygaldry / artificery.py
Artificery._resolve_type
86%
22
3
0
83%
6
1
86%
sygaldry / artificery.py
_collect_refs
100%
10
0
0
100%
10
0
100%
sygaldry / artificery.py
_validate_signature
69%
26
8
0
79%
14
3
72%
sygaldry / artificery.py
(no function)
98%
56
1
0
50%
2
1
97%
sygaldry / cache.py
_normalize_for_hash
83%
29
5
0
75%
16
4
80%
sygaldry / cache.py
_canonical_hash
100%
3
0
0
100%
0
0
100%
sygaldry / cache.py
Instances.__init__
100%
1
0
0
100%
0
0
100%
sygaldry / cache.py
Instances._cache_key
100%
3
0
0
100%
2
0
100%
sygaldry / cache.py
Instances.get
89%
9
1
0
83%
6
1
87%
sygaldry / cache.py
Instances.set
83%
6
1
0
50%
2
1
75%
sygaldry / cache.py
Instances.get_or_create
100%
8
0
0
100%
4
0
100%
sygaldry / cache.py
(no function)
96%
25
1
0
50%
2
1
93%
sygaldry / checker.py
check
100%
7
0
0
100%
4
0
100%
sygaldry / checker.py
_detect_type_checker
75%
4
1
0
50%
4
2
62%
sygaldry / checker.py
_run_and_parse
100%
6
0
0
100%
0
0
100%
sygaldry / checker.py
_invoke_checker
62%
8
3
0
50%
6
3
57%
sygaldry / checker.py
_parse_output
57%
7
3
0
50%
6
3
54%
sygaldry / checker.py
_line_to_config_path
100%
5
0
0
75%
4
1
89%
sygaldry / checker.py
_parse_pyright
0%
12
12
0
0%
2
0
0%
sygaldry / checker.py
_parse_mypy
0%
11
11
0
0%
6
0
0%
sygaldry / checker.py
_parse_ty
100%
11
0
0
100%
4
0
100%
sygaldry / checker.py
_extract_ty_line
75%
4
1
0
50%
4
2
62%
sygaldry / checker.py
(no function)
100%
32
0
0
100%
0
0
100%
sygaldry / cli.py
_parse_set_option
100%
6
0
0
100%
4
0
100%
sygaldry / cli.py
_parse_use_option
100%
8
0
0
100%
4
0
100%
sygaldry / cli.py
_build_artificery
100%
9
0
0
100%
4
0
100%
sygaldry / cli.py
_extract_call_defaults
91%
11
1
0
83%
6
1
88%
sygaldry / cli.py
_parse_method_args
100%
1
0
0
100%
0
0
100%
sygaldry / cli.py
_invoke_target
100%
10
0
0
100%
8
0
100%
sygaldry / cli.py
_format_config_yaml
100%
1
0
0
100%
0
0
100%
sygaldry / cli.py
_print_dry_run
94%
16
1
0
50%
4
2
85%
sygaldry / cli.py
_config_options
100%
4
0
0
100%
0
0
100%
sygaldry / cli.py
cli
100%
0
0
0
100%
0
0
100%
sygaldry / cli.py
run
96%
25
1
0
90%
10
1
94%
sygaldry / cli.py
show
50%
32
16
0
56%
18
2
52%
sygaldry / cli.py
validate
100%
6
0
0
100%
0
0
100%
sygaldry / cli.py
check
0%
17
17
0
0%
6
0
0%
sygaldry / cli.py
interactive
0%
20
20
0
0%
2
0
0%
sygaldry / cli.py
(no function)
98%
57
1
0
50%
2
1
97%
sygaldry / codegen.py
_to_identifier
100%
5
0
0
100%
4
0
100%
sygaldry / codegen.py
_split_import_path
100%
4
0
0
100%
2
0
100%
sygaldry / codegen.py
ConfigAnalyzer.__init__
100%
8
0
0
100%
0
0
100%
sygaldry / codegen.py
ConfigAnalyzer.analyze
100%
5
0
0
100%
2
0
100%
sygaldry / codegen.py
ConfigAnalyzer._alloc_name
40%
10
6
0
25%
4
1
36%
sygaldry / codegen.py
ConfigAnalyzer._alloc_anon
100%
4
0
0
100%
0
0
100%
sygaldry / codegen.py
ConfigAnalyzer._analyze_top_level
100%
20
0
0
100%
12
0
100%
sygaldry / codegen.py
ConfigAnalyzer._analyze_type_entry
100%
19
0
0
100%
8
0
100%
sygaldry / codegen.py
ConfigAnalyzer._analyze_func_entry
100%
5
0
0
100%
0
0
100%
sygaldry / codegen.py
ConfigAnalyzer._process_arg_value
59%
22
9
0
50%
14
1
56%
sygaldry / codegen.py
ConfigAnalyzer._analyze_entries
82%
11
2
0
67%
6
2
76%
sygaldry / codegen.py
ConfigAnalyzer._topological_sort
100%
9
0
0
100%
2
0
100%
sygaldry / codegen.py
ConfigAnalyzer._topological_sort.visit
100%
9
0
0
83%
6
1
93%
sygaldry / codegen.py
CodeGenerator.__init__
100%
12
0
0
100%
8
0
100%
sygaldry / codegen.py
CodeGenerator.generate
100%
5
0
0
100%
0
0
100%
sygaldry / codegen.py
CodeGenerator._emit
100%
4
0
0
100%
2
0
100%
sygaldry / codegen.py
CodeGenerator._emit_blank
100%
1
0
0
100%
0
0
100%
sygaldry / codegen.py
CodeGenerator._emit_header
100%
2
0
0
100%
0
0
100%
sygaldry / codegen.py
CodeGenerator._emit_imports
100%
6
0
0
75%
4
1
90%
sygaldry / codegen.py
CodeGenerator._emit_entries
83%
12
2
0
70%
10
3
77%
sygaldry / codegen.py
CodeGenerator._emit_component
100%
9
0
0
100%
4
0
100%
sygaldry / codegen.py
CodeGenerator._emit_plain
100%
10
0
0
100%
6
0
100%
sygaldry / codegen.py
CodeGenerator._resolve_ref_source
78%
9
2
0
67%
6
2
73%
sygaldry / codegen.py
CodeGenerator._value_to_source
80%
20
4
0
81%
16
3
81%
sygaldry / codegen.py
CodeGenerator._python_type_name
93%
15
1
0
93%
14
1
93%
sygaldry / codegen.py
generate_check_source
100%
4
0
0
100%
0
0
100%
sygaldry / codegen.py
(no function)
100%
64
0
0
100%
0
0
100%
sygaldry / errors.py
SygaldryError.__init__
100%
4
0
0
100%
0
0
100%
sygaldry / errors.py
SygaldryError.__str__
100%
8
0
0
100%
6
0
100%
sygaldry / errors.py
(no function)
95%
22
1
0
50%
2
1
92%
sygaldry / loader.py
load_config
100%
3
0
0
100%
0
0
100%
sygaldry / loader.py
_load_with_includes
95%
21
1
0
90%
10
1
94%
sygaldry / loader.py
_resolve_include
83%
6
1
0
50%
4
2
70%
sygaldry / loader.py
_expand_dotted_keys
100%
14
0
0
100%
6
0
100%
sygaldry / loader.py
_load_file
69%
13
4
0
67%
6
2
68%
sygaldry / loader.py
_deep_merge
100%
6
0
0
100%
4
0
100%
sygaldry / loader.py
_interpolate_config
100%
2
0
0
100%
0
0
100%
sygaldry / loader.py
_InterpolationResolver.__init__
100%
4
0
0
100%
0
0
100%
sygaldry / loader.py
_InterpolationResolver.resolve_value
85%
13
2
0
88%
8
1
86%
sygaldry / loader.py
_InterpolationResolver._resolve_dict
82%
11
2
0
67%
6
2
76%
sygaldry / loader.py
_InterpolationResolver._interpolate_string
89%
18
2
0
83%
12
2
87%
sygaldry / loader.py
_InterpolationResolver._split_interpolation
90%
41
4
0
83%
18
3
88%
sygaldry / loader.py
_InterpolationResolver._resolve_placeholder
100%
14
0
0
100%
8
0
100%
sygaldry / loader.py
_InterpolationResolver._resolve_config_path
85%
13
2
0
67%
6
2
79%
sygaldry / loader.py
_get_by_path
47%
17
9
0
43%
14
2
45%
sygaldry / loader.py
_infer_scalar
88%
17
2
0
100%
10
0
93%
sygaldry / loader.py
(no function)
97%
34
1
2
50%
2
1
94%
sygaldry / types.py
import_dotted_path
87%
23
3
0
62%
8
3
81%
sygaldry / types.py
(no function)
89%
9
1
0
50%
2
1
82%
Total
85%
1327
193
2
78%
530
83
83%
No items found using the specified filter.