-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_audit_style_contracts.py
More file actions
120 lines (103 loc) · 3.82 KB
/
test_audit_style_contracts.py
File metadata and controls
120 lines (103 loc) · 3.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
"""Regression checks for human-facing audit metadata completeness."""
from __future__ import annotations
import argparse
from olfactorybulb.audit.burton_urban_fi import run as run_burton_urban
from olfactorybulb.audit.cli import run_new_sweep
from olfactorybulb.audit.epl_fsi_intrinsic_validation import run as run_epl_fsi_intrinsic_validation
from olfactorybulb.audit.env_install import run as run_env_install
from olfactorybulb.audit.epli_correctness import run as run_epli_correctness
from olfactorybulb.audit.gc_intrinsic_validation import run as run_gc_intrinsic_validation
from olfactorybulb.audit.hfo_feature_contracts import run as run_hfo_feature_contracts
from olfactorybulb.audit.human_review_status import run as run_human_review_status
from olfactorybulb.audit.reference_dataset_status import run as run_reference_dataset_status
def _assert_human_metadata(report) -> None:
assert report.items, report.audit_id
for item in report.items:
assert item.title.strip(), item.check_id
assert item.criterion.strip(), item.check_id
assert item.description.strip(), item.check_id
assert item.acceptable.strip(), item.check_id
assert item.acceptable_basis.strip(), item.check_id
env_report = run_env_install(
argparse.Namespace(
skip_neuron=True,
skip_imports=True,
require_gpu=False,
run_launcher_smoke=False,
import_timeout_seconds=1.0,
launcher_timeout_seconds=1.0,
)
)
_assert_human_metadata(env_report)
burton_report = run_burton_urban(
argparse.Namespace(
skip_neuron=True,
cell_count=1,
cell_types="MC,TC",
use_coreneuron=False,
use_gpu=False,
dt_ms=0.1,
bias_max_iterations=1,
jobs=1,
)
)
_assert_human_metadata(burton_report)
epli_report = run_epli_correctness(
argparse.Namespace(
candidate_slice=None,
skip_neuron=True,
reference_sigma_multiplier=2.0,
)
)
_assert_human_metadata(epli_report)
gc_report = run_gc_intrinsic_validation(
argparse.Namespace(
skip_neuron=True,
cell_models="GC1",
use_coreneuron=False,
use_gpu=False,
dt_ms=0.1,
bias_max_iterations=1,
jobs=1,
reference_gc_subtypes="generic_or_unspecified",
reference_sigma_multiplier=2.0,
)
)
_assert_human_metadata(gc_report)
epl_fsi_report = run_epl_fsi_intrinsic_validation(
argparse.Namespace(
skip_neuron=True,
cell_models="SyntheticEPL2026.PVCRH_FSI1",
use_coreneuron=False,
use_gpu=False,
dt_ms=0.1,
bias_max_iterations=1,
jobs=1,
reference_sigma_multiplier=2.0,
)
)
_assert_human_metadata(epl_fsi_report)
hfo_report = run_hfo_feature_contracts(argparse.Namespace())
_assert_human_metadata(hfo_report)
human_review_report = run_human_review_status(argparse.Namespace())
_assert_human_metadata(human_review_report)
reference_dataset_report = run_reference_dataset_status(
argparse.Namespace(
dataset_id="pv_crh_epl_fsi",
config_path=None,
)
)
_assert_human_metadata(reference_dataset_report)
new_sweep_report = run_new_sweep(["--skip-neuron", "--skip-imports"])
_assert_human_metadata(new_sweep_report)
prefixed_hfo_item = next(item for item in new_sweep_report.items if item.check_id == "hfo_feature_contracts.hfo_search_space_unique_paths")
assert prefixed_hfo_item.description == next(
item.description for item in hfo_report.items if item.check_id == "hfo_search_space_unique_paths"
)
assert prefixed_hfo_item.acceptable == next(
item.acceptable for item in hfo_report.items if item.check_id == "hfo_search_space_unique_paths"
)
assert prefixed_hfo_item.acceptable_basis == next(
item.acceptable_basis for item in hfo_report.items if item.check_id == "hfo_search_space_unique_paths"
)
print("audit_style_contracts: OK")