Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Data Management, Test Queue and Candidate Review Pages and Database Implementation to support #648 #688

Merged
merged 50 commits into from
Sep 28, 2023

Conversation

howard-e
Copy link
Contributor

@howard-e howard-e commented Jun 27, 2023

A proposed base to support features of #518, #648 and w3c/aria-at#950. This includes changes to the new Data Management page, and several changes for the Test Queue and Candidate Review pages. Also included is a change for the database structure, described by #632 and the proposed database implementation (v2).

New versions of the pages should be written against this branch.

The commits in this PR have been individually reviewed through the following PRs:


These changes can be viewed at https://aria-at-app-sandbox.bocoup.com/


Note: This PR should ideally remain in draft until the proposed pages are all ready as this restructure has deviations in some expected operations of the application, especially around the test plan promotion process.

@howard-e howard-e force-pushed the update-database-impl branch from 165dc0f to 5e523b6 Compare July 18, 2023 19:55
@howard-e howard-e mentioned this pull request Jul 19, 2023
33 tasks
@howard-e
Copy link
Contributor Author

#713 includes an updated Data Management page and is based on this PR.

@howard-e howard-e force-pushed the update-database-impl branch 2 times, most recently from 1fe844d to 065c9c9 Compare July 25, 2023 14:13
@howard-e howard-e force-pushed the update-database-impl branch from 9d1c3b4 to c9ffffd Compare August 2, 2023 13:04
@howard-e howard-e force-pushed the update-database-impl branch from c9ffffd to f9ebcc0 Compare August 14, 2023 19:13
alflennik and others added 7 commits August 24, 2023 15:28
* Refine raise an issue behavior

* Address feedback

* Fixed squished dot icon

* Address last feedback

* Hide closed issues on datamgmt page
* First pass on functioning sort buttons for DataManagePage

* Functioning sort

* Filter functionality for DataManagement

* Refactor filter buttons on DataManagement to reduce complexity

* Filter buttons as separate component

* DataManagement page, break sort out into dedicated hook

* DataManagement page, dedicated hook for filtering

* DataManagement, add constant for test plan version phases to simplify hooks code

* Add relevant dynamic aria attributes to DataManagement column sort elements

* Add relevant dynamic aria attributes to DataManagement filter buttons

* unit tests for SortableTableHeader

* unit tests for FilterButtons

* unit tests for useDataManagementTableSorting hook

* Add unit tests for useDataManagementTableFiltering hook

* Filter buttons only show buttons that have have label, handle testPlans with multiple versions, ...

useDataManagementTableFiltering don't generate label for buttons that have no associated plans

* Break out overall phase derivation logic into dedicated hooks, functional filter and sort

* Simplify useDerivedTestPlanOverallPhase

* Additional unit tests for additional hooks and to test scenarios with multiple test plan versions for a single test plan

hook rename

* Different UX click interaction sequence with SortableTableHeader

* Correct interpretation of alphabetical ascending/descending

* Rename DataManagement/hooks.js to filterSortHooks

* Move sorting and filtering enums to more specific locations based on use

* Fix file locations in unit tests, DataManagement, FilterButtons, SortableTableHeader

* Smaller margin between buttons, FilterButtons

* First pass on functioning sort buttons for DataManagePage

* Functioning sort

* Filter functionality for DataManagement

* Refactor filter buttons on DataManagement to reduce complexity

* Filter buttons as separate component

* DataManagement page, break sort out into dedicated hook

* DataManagement page, dedicated hook for filtering

* DataManagement, add constant for test plan version phases to simplify hooks code

* Add relevant dynamic aria attributes to DataManagement column sort elements

* Add relevant dynamic aria attributes to DataManagement filter buttons

* unit tests for SortableTableHeader

* unit tests for FilterButtons

* unit tests for useDataManagementTableSorting hook

* Add unit tests for useDataManagementTableFiltering hook

* Filter buttons only show buttons that have have label, handle testPlans with multiple versions, ...

useDataManagementTableFiltering don't generate label for buttons that have no associated plans

* Break out overall phase derivation logic into dedicated hooks, functional filter and sort

* Simplify useDerivedTestPlanOverallPhase

* Additional unit tests for additional hooks and to test scenarios with multiple test plan versions for a single test plan

hook rename

* Different UX click interaction sequence with SortableTableHeader

* Correct interpretation of alphabetical ascending/descending

* Rename DataManagement/hooks.js to filterSortHooks

* Move sorting and filtering enums to more specific locations based on use

* Fix file locations in unit tests, DataManagement, FilterButtons, SortableTableHeader

* Smaller margin between buttons, FilterButtons

* Cleanup after rebase

* Render SortableTableHeader inside <table> for test to dismiss warning

* Add AriaLiveRegionProvider, Update DataManagement table to use it

* Allow SortableTableHeader component to work without AriaLiveRegionProvider
* Start to support for sunset phase

* Explicitly use 'DEPRECATED' phase for TestPlanVersion.phase

* Add checks to prevent test plan versions in R&D or Deprecated from being shown in data management dropdown

* Remove duplicate updateTestPlanVersion call

* Reuse phase variable

* Add copy for deprecated reports with DisclaimerInfo component

* Exclude 'DEPRECATED' testPlanVersions on DataManagement page query
* Adjust cell items for data management row to use list-related roles; update aria-labels

* Address PR feedback

* Remove width:max-content

* Address PR feedback

* Formatting

* Address feedback
stalgiag and others added 9 commits August 30, 2023 16:00
* Revise required reports approach

* Update tests

* Revert dev.env
* Apply correct sort order for Timeline for All Versions section

* Update headings used on Versions page

* Add aria-labelledby's for tables

* Add &nbsp; for applicable spaces so the text is properly announced by NVDA

* Add migration to add missing deprecatedAt dates and to also properly set the candidatePhaseReachedAt dates to more practical dates after the migrations (if candidatePhaseReachedAt < draftPhaseReachedAt, set it candidatePhaseReachedAt to draftPhaseReachedAt + 1day)

* Test Plan Versions Page: Use standard testPlanVersions descending sort and show all phases being included in Version Summary

* Switch issues search support for checking against hidden body content instead

* Fix TestPlanReportStatusDialog using d (day of the week) and y (era)

* Explicit check for older date when deprecating existing RD test plan versions during import

* Update hidden message content in github issue

* Update query for anon user on TestRun page

* Keep overall status pill from drifting to center of cell

* Fix R&D only TestPlanVersion's table not being shown

* Use aria-label for heading to prevent space being announced
…773)

* Show all versions in 'Timeline for All Versions' table

* Update timestamp migrations to use more real world change phase change times (avoid exact time being set for when one phase ends and another begins)

* Update import script to have a 'delayed' time on the report being deprecated

* Add td -> th for first column cell for Version Summary and Timeline related tables

* Match sort order described in #719

* Correct deprecation date (#780)

* Compare most recent test plan version to deprecate against

* Correct deprecation date without using the more recent test plan version since it's being set already

---------

Co-authored-by: Erika Miguel <[email protected]>
* Update deprecated phase copy

* Remove unneeded change

* Fix spacing in copy
* Implement hidden metadata comment for issues

* Address PR feedback

* Add test plan issues graphql field

* Make issue loading more resilient

* Fix error that occurs when there are multiple issues to sort
…ase with old TestPlanVersion results (#771)

* Revise deprecation process when copying results from earlier version to avoid unexpected errors

* Additional edge case management for updatePhaseResolver during copying of old test results

* Address edge cases during phase update process when using old results

* Update tests to include updatePhase process

* Extend default timeout

* Make db docs consistent between test and dev

* Update database.md formatting

---------

Co-authored-by: alflennik <[email protected]>
Copy link
Contributor

@stalgiag stalgiag left a comment

Choose a reason for hiding this comment

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

LGTM!

@howard-e howard-e merged commit 14563b0 into main Sep 28, 2023
@howard-e howard-e deleted the update-database-impl branch September 28, 2023 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants