Skip to content

Consolidate dashboard Paparazzi tests into DashboardLayoutPaparazziTest#4415

Merged
frett merged 5 commits into
developfrom
dashboardPaparazziUpdates
May 6, 2026
Merged

Consolidate dashboard Paparazzi tests into DashboardLayoutPaparazziTest#4415
frett merged 5 commits into
developfrom
dashboardPaparazziUpdates

Conversation

@frett

@frett frett commented May 6, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Folds all dashboard page Paparazzi tests (HomeLayout, AllFavoritesLayout, ToolsLayout, LessonsLayout) into DashboardLayoutPaparazziTest so each page is snapshotted rendered within the full dashboard shell (nav bar, scaffold, top app bar) rather than standalone
  • Moves the open nav drawer snapshot from DrawerMenuLayoutPaparazziTest into DashboardLayoutPaparazziTest so the drawer is shown in context of the full dashboard
  • Adds a locale parameter (null / in) to DashboardLayoutPaparazziTest; tests that are locale-specific (Lessons, select Tools modes) run both variants, others skip non-null locale via assumeTrue

Test plan

  • ./gradlew verifyPaparazzi passes

🤖 Generated with Claude Code

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@codecov

codecov Bot commented May 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 51.75%. Comparing base (62f1cff) to head (3dc2f92).
⚠️ Report is 3 commits behind head on develop.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #4415      +/-   ##
===========================================
+ Coverage    51.67%   51.75%   +0.08%     
===========================================
  Files          453      453              
  Lines        12014    12014              
  Branches      2079     2079              
===========================================
+ Hits          6208     6218      +10     
+ Misses        5191     5181      -10     
  Partials       615      615              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

…snapshots

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@frett frett force-pushed the dashboardPaparazziUpdates branch from e2fde87 to cc2fdb4 Compare May 6, 2026 20:12
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@frett frett force-pushed the dashboardPaparazziUpdates branch from 34eb36b to 8b9d3b7 Compare May 6, 2026 20:28
…Test

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@frett frett force-pushed the dashboardPaparazziUpdates branch from 6b7dfa9 to bc12d26 Compare May 6, 2026 20:58
…tPaparazziTest

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@frett frett force-pushed the dashboardPaparazziUpdates branch from ca663ec to 3dc2f92 Compare May 6, 2026 21:22
@frett frett changed the title Integrate dashboard page Paparazzi tests into DashboardLayoutPaparazziTest Consolidate dashboard Paparazzi tests into DashboardLayoutPaparazziTest May 6, 2026
@frett frett marked this pull request as ready for review May 6, 2026 21:25
@frett

frett commented May 6, 2026

Copy link
Copy Markdown
Contributor Author

PR Review: Consolidate dashboard Paparazzi tests into DashboardLayoutPaparazziTest (#4415)

Summary

Moves all standalone dashboard page Paparazzi tests (HomeLayout, AllFavoritesLayout, ToolsLayout, LessonsLayout, DrawerMenuLayout) into a single DashboardLayoutPaparazziTest, rendering each through the full dashboard shell (nav bar, scaffold, top app bar) rather than in isolation. Adds a locale parameter to enable locale variants on selected tests.

Checklist Findings

✅ Looks Good

  • ktlint — passes cleanly, no violations
  • BasePaparazziTest conventionDashboardLayoutPaparazziTest correctly extends BasePaparazziTest with the full @TestParameter night/accessibility/device matrix
  • Snapshots via CI — no locally-recorded snapshots; all PNG changes are LFS pointers committed by the CI workflow
  • Circuit wiringpresenterOf { stateVar } pattern correctly captures the mutable state var at composition time, consistent with the existing toolsState usage
  • State mutabilityvar used only where tests mutate the state (homeState, toolsState); val elsewhere (lessonsState, allFavoritesState) — appropriate
  • Locale scopingLessonsLayout() and the two ToolsLayout() modes correctly run both locale variants; other tests use assumeTrue(locale == null) to preserve original coverage scope
  • DrawerMenuScreenStateTestData — drawer test correctly uses the existing test utility (with versionName/versionCode populated) rather than constructing DrawerState manually
  • Deleted test files — all four standalone test classes cleanly removed with no orphaned snapshot files

⚠️ Minor Issues

(none)

❌ Must Fix

(none)

Overall Verdict

APPROVE — Clean, focused refactoring with no convention violations. Every deleted test is accounted for in the consolidated class, snapshot coverage is preserved or expanded, and the CI workflow correctly generated all new reference images.

@frett frett merged commit bb822f8 into develop May 6, 2026
13 checks passed
@frett frett deleted the dashboardPaparazziUpdates branch May 6, 2026 22:41
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.

1 participant