Skip to content

Increase test coverage#90

Merged
chrisgleissner merged 13 commits intomainfrom
test/increase-coverage
Mar 3, 2026
Merged

Increase test coverage#90
chrisgleissner merged 13 commits intomainfrom
test/increase-coverage

Conversation

@chrisgleissner
Copy link
Owner

No description provided.

- Updated multiple PNG images in the documentation and application sections.
- Enhanced Playwright tests to save coverage data after each test.
- Improved connection status handling in demo mode tests.
- Added new unit tests for action summaries and network snapshots.
- Implemented web server logs bridge with normalized logging and error handling.
Copilot AI review requested due to automatic review settings March 2, 2026 22:20
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Improves the repo’s overall coverage signal (unit + Playwright E2E) and hardens connectivity popover behavior/tests, in support of the “Increase test coverage” goal.

Changes:

  • Added new unit tests covering low-coverage diagnostics modules (action summaries, network snapshot, web server log bridge).
  • Persisted Playwright NYC coverage output for additional E2E specs and adjusted a demo-mode popover close path.
  • Updated connectivity popover autofocus behavior and tightened UI layout tolerance; updated CI to enforce coverage against merged LCOV.

Reviewed changes

Copilot reviewed 15 out of 88 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/unit/lib/diagnostics/webServerLogs.test.ts Adds unit coverage for server-log polling normalization, 401 handling, and error rate-limiting.
tests/unit/lib/diagnostics/networkSnapshot.test.ts Adds unit coverage for REST request/response summarization and deterministic unmatched handling.
tests/unit/lib/diagnostics/actionSummaries.test.ts Adds unit coverage for action summary outcomes/effects including pending REST and action-end errors.
src/components/ConnectivityIndicator.tsx Improves dialog autofocus to focus the close button; adjusts diagnostics row button styling.
playwright/webPlatformAuth.spec.ts Saves NYC coverage after each test run.
playwright/video.spec.ts Saves NYC coverage during finalization to ensure output is captured.
playwright/verifyUserTracing.spec.ts Saves NYC coverage after each test run.
playwright/demoMode.spec.ts Closes the connection popover via the close button (aligns with focus changes) and loosens a flaky status expectation.
playwright/debugDemo.spec.ts Saves NYC coverage after each test run.
playwright/connectionStatusLayout.spec.ts Widens layout tolerance from 4px to 5px for stability.
playwright/buttonHighlightProof.spec.ts Saves NYC coverage after each test run.
playwright/accessibility.spec.ts Saves NYC coverage after each test run.
PLANS.md Reworks plan doc to focus on coverage remediation and tracking.
.maestro/subflows/common-navigation.yaml Makes “Play” navigation more resilient via retry + multiple tap strategies.
.github/workflows/android.yaml Switches coverage threshold gating to use merged LCOV (lcov-merged.info).

@codecov
Copy link

codecov bot commented Mar 3, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.00%. Comparing base (016b222) to head (8ca575b).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@              Coverage Diff              @@
##               main      #90       +/-   ##
=============================================
+ Coverage     71.66%   90.00%   +18.34%     
  Complexity      101      101               
=============================================
  Files           271      280        +9     
  Lines         19750    30798    +11048     
  Branches       5773     6398      +625     
=============================================
+ Hits          14154    27720    +13566     
+ Misses         4332     2911     -1421     
+ Partials       1264      167     -1097     
Flag Coverage Δ
android 81.37% <ø> (ø)
e2etests 90.17% <100.00%> (+18.80%) ⬆️
unittests 90.17% <100.00%> (+18.80%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/components/ConnectivityIndicator.tsx 96.09% <100.00%> (+9.25%) ⬆️

... and 218 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

…engths, and source navigation

- Added tests for UltiSID 2 identity change and address handling in AudioMixer.
- Introduced tests for tryFetchUltimateSidBlob in playbackRouter, covering path normalization and error handling.
- Expanded songlengths tests to cover various edge cases, including empty durations and error handling during resolution.
- Enhanced InMemoryTextBackend tests to cover edge cases, including path normalization and duplicate entries.
- Improved ftpSourceAdapter tests to handle empty entries and cache expiration scenarios.
- Added localSourceAdapter tests for SAF entries and error handling.
- Enhanced LocalFsSongSource tests for duration resolution and error handling during metadata scans.
- Added fetchTrace and traceSession tests for event suppression and error handling.
- Introduced controlType tests for checkbox mapping and control kind inference.
…vscService, and more

- Added tests for error handling in hvscFilesystem, including scenarios for string errors and file size limits.
- Improved hvscMediaIndex tests with better coverage for folder queries and mock entries.
- Expanded hvscService tests to cover index readiness and query option fallbacks.
- Enhanced hvscSource tests to ensure proper handling of song entries and durations.
- Updated controlType tests to validate checkbox mappings and control kind inference.
- Refined settingsTransfer tests for payload validation and type checks.
- Added mockConfig tests for handling null and empty loader responses.
- Improved sliderBehavior tests to cover edge cases in snapping and committing.
- Enhanced logging tests to validate behavior when global objects are undefined.
- Expanded songlengths tests to cover legacy format handling and out-of-range scenarios.
- Improved failureTaxonomy tests to classify various error types and handle null inputs.
- Enhanced fetchTrace tests to validate behavior with undefined window and blob types.
- Updated redaction tests to ensure proper handling of sensitive data and whitespace.
- Improved traceSession tests for event suppression and eviction logic.
- Enhanced pathDisplay tests to cover edge cases in path fitting and truncation.
- Added tests for `normalizeDriveDevices` to handle null payloads, non-object entries, and duplicate device classes.
- Introduced performance memory logging in `hvscArchiveExtraction` tests.
- Enhanced `hvscDownload` tests to cover various edge cases including undefined downloaded bytes and stat size checks.
- Improved `networkSnapshot` tests to handle requests without timestamps.
- Expanded `sliderBehavior` tests for snapping and throttling behavior.
- Added tests for `localArchiveIngestion` to handle non-Error thrown by `unzipSync`.
- Enhanced `useStreamData` tests to cover early returns for non-matching entries.
- Improved `useSonglengths` tests for file handling and error scenarios.
- Added tests for `localSourcesStore` to handle invalid JSON and error handling in SAF sources.
- Enhanced `traceTargets` tests to cover mock server scenarios and URL normalization.
…me, ramDumpFolderStore, playFilesUtils, and pathDisplay to improve coverage
- Removed duplicate dependency "@sentry/react" from package.json.
- Added new dependencies for coverage reporting: "@axe-core/playwright", "@vitest/coverage-istanbul", "nextcov".
- Updated collect-coverage.sh to merge coverage reports using nextcov instead of lcov-result-merger.
- Enhanced unit tests for drive device normalization to cover multi-word apiKey scenarios.
- Added tests for hvscReleaseService to handle various response scenarios and fallback mechanisms.
- Introduced tests for safeAddLog and safeAddErrorLog in songlengthServiceFacade to ensure error handling.
- Added new tests for developerModeStore and featureFlagsWeb to validate localStorage interactions.
- Enhanced error classification tests in failureTaxonomy and traceActionContextStore.
@chrisgleissner chrisgleissner merged commit 59fefdc into main Mar 3, 2026
32 checks passed
@chrisgleissner chrisgleissner deleted the test/increase-coverage branch March 3, 2026 22:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants