-
Notifications
You must be signed in to change notification settings - Fork 17
test(dataviewer): add tests for remaining feature components #222
Copy link
Copy link
Open
Labels
enhancementNew feature or improvement requestNew feature or improvement requesttestingTesting-related issuesTesting-related issues
Description
Problem Statement
After completing the focused component test issues (#214–#221), some components will remain untested — shared UI primitives, layout wrappers, context providers, error boundaries, routing components, and feature-specific components not covered by the earlier issues. This catch-all issue covers the remaining gap to reach 80% overall frontend coverage.
Parent tracking issue: #210
Depends on: All prior test issues (#211–#221)
Scope
Remaining untested areas (examples — actual scope determined by coverage gaps):
- Shared UI components (buttons, modals, tooltips, dropdowns)
- Layout components (sidebar, header, footer, split panes)
- Context providers and their consumer patterns
- Error boundary components
- Route components and navigation guards
- Any feature components not covered by issues test(dataviewer): add tests for episode viewer components #218–test(dataviewer): add tests for frame editor components #221
Acceptance Criteria
- All remaining untested components have corresponding
.test.tsxfiles - Tests follow the same patterns established in earlier issues
- Error boundaries tested with error-throwing children
- Context providers tested with consumer components
- Overall
src/coverage reaches 80% for lines, functions, branches, and statements -
npm run test:coveragepasses with thresholds enforced - All new tests pass with
npm run test
How to Identify Remaining Gaps
Run npm run test:coverage and check the coverage report for files below 80%. Prioritize:
- Files with 0% coverage
- Files with complex logic below threshold
- Files with high usage (imported by many other files)
RPI Tutorial
Phase 1: Research — /task-research
/task-research topic="Frontend coverage gaps — run coverage report for src/dataviewer/frontend/src/, identify all files below 80% coverage not already covered by issues #214-#221, categorize by component type"
Phase 2: Plan — /task-plan
/task-plan research="{research-output}/remaining-component-tests.md"
Phase 3: Implement — /task-implement
/task-implement plan="{plan-output}/remaining-component-tests-plan.instructions.md"
Phase 4: Review — /task-review
/task-review plan="{plan-output}/remaining-component-tests-plan.instructions.md"
Review focus:
- Coverage thresholds met (80% lines, functions, branches, statements)
- No test files are empty or trivial (just rendering without assertions)
- Error boundary tests actually trigger error recovery
- No coverage gaps hidden by overly broad exclude patterns
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or improvement requestNew feature or improvement requesttestingTesting-related issuesTesting-related issues