You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: harmonise API, types, reporter, and test coverage
- Remove probe_raw from package re-exports (__init__.py); callers import
from quantumvalidator.tls_utils directly
- Correct timeout type int→float in _run_openssl, _read_server_banner,
_probe_ssh, _probe_ftp; remove int() cast in cli.py
- Replace falsy `if starttls:` with `if starttls is not None:` in
_build_cmd (mirrors probe_raw fix)
- Add _VALID_STARTTLS frozenset; probe_raw now raises ValueError for
unrecognised STARTTLS modes
- Fix reporter.save_report() to write from _console, not public alias;
rename con→console in private helpers
- Move import logging as _log to module level in constants.py; fix
import order in __init__.py (PEP 8)
- Add --cov-fail-under=100 to pyproject.toml addopts
- Fix test_exits_2_on_missing_target, test_exits_2_on_save_error;
add TestInfoGroups (5 tests); fix _capture helper in test_reporter.py
- Update CLAUDE.md: openssl ≥ 3.5, --notes-file release pattern,
reporter convention, main branch URLs throughout
-**Assessor mocking**: patch `"quantumvalidator.assessor.check_tls"` (imported at module top)
70
70
-**CLI mocking**: patch `"quantumvalidator.assessor.assess"` and `"quantumvalidator.reporter.print_full_report"` (both are lazy imports inside `check()`)
71
-
-**Reporter tests**: use `Console(file=StringIO(), no_color=True, width=200)` to capture output; pass console as trailing positional arg — private helpers use `con`, not `console`
71
+
-**Reporter tests**: use `Console(file=StringIO(), no_color=True, width=200)` to capture output; pass `console=con` as a keyword argument — all reporter functions (public and private) accept `console=`
72
72
-**Test class naming**: `class TestFeatureName:`, snake_case methods, AAA structure
73
73
-**Coverage target**: 100% — enforced via `pyproject.toml` addopts
74
74
@@ -135,10 +135,8 @@ Every version bump **must** be followed by a GitHub release. Do not leave a vers
135
135
git tag vX.Y.Z
136
136
git push origin vX.Y.Z
137
137
138
-
# Create the GitHub release
139
-
gh release create vX.Y.Z \
140
-
--title "vX.Y.Z" \
141
-
--notes "$(cat <<'EOF'
138
+
# Create the GitHub release (always use --notes-file, never inline --notes heredoc)
0 commit comments