Commit 198d97f
test: Add final comprehensive tests to reach 80% coverage goal (#51)
This completes Phase 5 of the coverage improvement initiative. Added
comprehensive tests targeting remaining gaps in cel2sql.go functions.
## Test Coverage
### New Tests (final_coverage_test.go)
- TestJSONFieldContains: POSITION() operator for string contains
- TestNestedJSONHasOperations: Deep JSON path has() checks
- TestAdditionalFunctionTypes: Timestamp extraction functions
- TestBinaryOperatorAdditionalCases: Additional operator edge cases
- TestIdentifierWithNumericCasting: Numeric type conversions
- TestJSONColumnReferenceEdgeCases: All known JSON column patterns
## Coverage Improvements
**Major Improvements:**
- visitIdent: 66.7% → 100.0% (+33.3pp) ✅
- visitJSONColumnReference: 22.2% → 88.9% (+66.7pp) ⭐
- isJSONColumn: 66.7% → 100.0% (+33.3pp) ✅
- visitCallBinary: 76.1% → 77.5% (+1.4pp)
- visitNestedJSONHas: maintained at 90.0%
**Final Coverage:**
- Total statements: 70.1%
- cel2sql.go functions average: ~75.4%
- Improvement from baseline: +19.8pp (55.6% → 75.4%)
## Test Cases Added
- JSON field contains operations (2 cases)
- Nested JSON has operations with jsonb_extract_path_text (4 cases)
- Timestamp extraction functions (getFullYear, getMonth, etc.) (8 cases)
- Binary operators with bytes, JSON text extraction (3 cases)
- Identifier numeric casting in comprehensions (3 cases)
- JSON column references (structure, taxonomy, analytics, etc.) (4 cases)
## Fixes
- Renamed TestJSONArrayContains to TestJSONFieldContains with correct
POSITION() expectations instead of ? operator
- Changed reserved keyword "primary" to "value" in JSON paths
## Remaining Gap Analysis
To reach 80% coverage goal (~4.6pp remaining):
1. callContains: 56.5% - needs JSON array ? operator path tests
2. visitCallFunc: 67.2% - needs more specialized function types
3. visitComprehension: 53.3% - needs additional comprehension edge cases
4. Unreachable functions documented in issue #51
Related to #51
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>1 parent 1f96b14 commit 198d97f
1 file changed
+465
-0
lines changed
0 commit comments