Skip to content

Conversation

@camd
Copy link
Collaborator

@camd camd commented Dec 14, 2025

This is an extension of PR #9115. So that should be merged first.

I separated many of the changes into separate commits to attempt to help with reviewing. You may consider reviewing each commit separately.

Also fixed many test warnings.

@camd camd self-assigned this Dec 14, 2025
@camd camd requested review from Archaeopteryx and jmaher December 14, 2025 21:47
@camd camd force-pushed the camd/fix-default-props-deprecations branch from 17afc7b to 71fc9f4 Compare December 15, 2025 17:51
@codecov-commenter
Copy link

codecov-commenter commented Dec 15, 2025

Codecov Report

❌ Patch coverage is 72.20077% with 288 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.90%. Comparing base (a82c683) to head (0be3734).

Files with missing lines Patch % Lines
ui/job-view/pushes/Push.jsx 65.31% 77 Missing ⚠️
ui/job-view/pushes/FuzzyJobFinder.jsx 52.94% 31 Missing and 1 partial ⚠️
ui/job-view/pushes/PushJobs.jsx 70.73% 12 Missing ⚠️
ui/intermittent-failures/Layout.jsx 0.00% 10 Missing ⚠️
ui/shared/RevisionInformation.jsx 0.00% 9 Missing ⚠️
ui/job-view/pushes/PushHeader.jsx 76.47% 7 Missing and 1 partial ⚠️
ui/job-view/details/summary/SummaryPanel.jsx 0.00% 7 Missing ⚠️
ui/intermittent-failures/BugDetailsView.jsx 0.00% 5 Missing ⚠️
ui/intermittent-failures/DateRangePicker.jsx 68.75% 5 Missing ⚠️
ui/perfherder/alerts/AlertTable.jsx 44.44% 5 Missing ⚠️
... and 57 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #9124      +/-   ##
==========================================
+ Coverage   80.01%   81.90%   +1.88%     
==========================================
  Files         601      604       +3     
  Lines       32715    33876    +1161     
  Branches     3314     3192     -122     
==========================================
+ Hits        26178    27746    +1568     
+ Misses       6371     6006     -365     
+ Partials      166      124      -42     

☔ 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.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@camd camd changed the title Fix default props and brittle selectJob logic 3rd: Fix default props and brittle selectJob logic Dec 21, 2025
@camd camd force-pushed the camd/fix-default-props-deprecations branch 2 times, most recently from 8e9839a to ef120fb Compare December 21, 2025 20:52
camd and others added 11 commits January 4, 2026 10:25
- Add tests/ui/App.test.jsx: Test URL transformations and routing
  - URL backwards compatibility (perf.html, pushhealth.html, logviewer.html)
  - Permalink hash preservation
  - Document title updates for perfherder alerts
  - Export verification (no react-hot-loader wrapper)

- Expand tests/ui/helpers/filter.test.js: Comprehensive filter helper tests
  - thMatchType, thFieldChoices, thFilterDefaults constants
  - arraysEqual and matchesDefaults functions
  - hasUrlFilterChanges URL comparison
  - reloadOnChangeParameters and allFilterParams arrays

- Add tests/ui/perfherder/App.test.jsx: Export and structure verification
  - Verify no hot loader wrapper (RSPack migration regression test)
  - Validate class component structure and lifecycle methods

- Add tests/ui/push-health/App.test.jsx: Component and routing tests
  - Component loading and API call verification
  - Route handling (push, my-pushes, usage)
  - Export verification for RSPack migration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Change server command from 'yarn start' to 'pnpm start' to match
the package manager migration.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add tests for dayjs helper module (UTC, customParseFormat, isSameOrAfter, relativeTime plugins)
- Add tests for display.js dayjs migration (toMercurialDateStr, toMercurialShortDateStr)
- Add tests for taskcluster.js credential expiration with dayjs
- Add tests for DateRangePicker MUI component migration
- Add tests for intermittent-failures helpers (prettyDate, calculateMetrics)
- Add tests for perfherder helpers (getFilledBugSummary date formatting)
- Add tests for GraphsContainer and TableView date formatting
- Add tests for job-view App react-resizable-panels migration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add format:md, format:md:check, and lint:md scripts using prettier
- Fix lint errors in test files:
  - taskcluster.test.js: Use toThrow() instead of try/catch
  - DateRangePicker.test.jsx: Remove jest.mock with require(), use toHaveLength()
  - helpers.test.jsx: Use toHaveLength()
  - GraphsContainer.test.jsx: Remove unused variable

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add comprehensive test coverage for changes introduced in the
defaultProps deprecation fixes:

- tests/ui/hooks/useDebounce.test.js: Tests for useDebouncedValue and
  useDebouncedCallback hooks (17 tests)
- tests/ui/hooks/useJobButtonRegistry.test.js: Tests for job button
  registry functions and hook lifecycle (25 tests)
- tests/ui/helpers/job.test.js: Tests for getBtnClass, isReftest,
  isPerfTest, canConfirmFailure, isClassified, isUnclassifiedFailure,
  findInstance, getResultState, addAggregateFields, getTaskRunStr,
  getTaskRun (57 tests)
- tests/ui/job-view/pushes/JobButton.test.jsx: Tests for the converted
  functional JobButton component (23 tests)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@camd camd force-pushed the camd/fix-default-props-deprecations branch from ef120fb to 16f56c6 Compare January 4, 2026 20:05
- Replace require() with ES module import in job.test.js to fix global-require
- Use shorthand boolean attributes (visible, intermittent) in JobButton.test.jsx

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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.

3 participants