-
Notifications
You must be signed in to change notification settings - Fork 1
Add test function manifest verification system #12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Add scale_olm_test.py with meta-tests for test suite integrity - Include test_functions_manifest.txt with current 224 unique test functions - Add scripts/regenerate_manifest.py for updating manifest - Detect duplicate function names across files (14 found in current codebase) - Verify manifest stays current with actual test functions - Protect against accidental test loss with baseline count verification This establishes permanent monitoring of test suite completeness.
wawiesel
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@olm-bot you said there were duplicate test names. Let's rename those so we don't have duplicates
- Rename 14 duplicate test function names with descriptive suffixes - Advanced test files get _advanced suffix (e.g., test_default_params_advanced) - Enhanced test files get _enhanced suffix (e.g., test_schema_gridgradient_enhanced) - Module-specific tests get module suffix (e.g., test_module_exports_report) - Cross-module duplicates get context suffix (e.g., test_duplicate_degenerate_axis_value_check) This resolves all duplicate function names that could cause test discovery issues. Test function count increased from 224 to 243 unique functions. All verification tests now pass with zero duplicates detected.
- Add SHA256 hashing of test function bodies for comprehensive change detection - Manifest format now: hash:function_name (e.g., 2eb0dd355f834fe8:test_gridgradient_basic) - Detect function additions, removals, renames, AND implementation changes - New test_implementation_stability() provides informational hash change reports - Enhanced test_manifest_is_current() fails on any hash mismatches - Updated regenerate_manifest.py to use hash-based format This creates a foolproof verification system that catches: ✅ Missing/extra functions ✅ Duplicate function names ✅ Function implementation changes ✅ Accidental test modifications during refactoring Hash-based verification tested and working - detects even single comment changes.
…cument completion of test function manifest verification system - Record SHA256 hashing implementation and duplicate resolution - Update context for next developer session - No functional changes, documentation only
4767ade to
164762e
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #12 +/- ##
=======================================
Coverage 63.46% 63.46%
=======================================
Files 16 16
Lines 2688 2688
=======================================
Hits 1706 1706
Misses 982 982
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Establishes permanent verification system to monitor test suite completeness and integrity with SHA256 function body hashing. This foundational infrastructure prevents test loss during refactoring and detects even subtle implementation changes.
What's Added
testing/scale_olm_test.py- Meta-tests that verify test suite integrity with hash-based checkingtesting/test_functions_manifest.txt- Manifest of all 244 unique test functions with SHA256 hashesscripts/regenerate_manifest.py- Script to update manifest when tests changeEnhanced Verification Features
Current State
2eb0dd355f834fe8:test_gridgradient_basicDeduplication Work
Systematically resolved 14 duplicate test function names:
_advancedsuffix_enhancedsuffix_report,_run,_generate_states)_checkvs_core)Usage
Foolproof Detection
The hash-based system catches:
✅ Missing/extra functions
✅ Function renames
✅ Implementation changes (even single comments)
✅ Duplicate function names
✅ Mass test loss scenarios
Tested live: Successfully detected hash change from
2eb0dd355f834fe8to8508c041779b6c74when single comment was added to test function.This creates the foundation for confident test suite refactoring with guaranteed zero test loss verification.