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

Initial Testing Pages #581

Merged
merged 4 commits into from
Jan 3, 2024
Merged

Initial Testing Pages #581

merged 4 commits into from
Jan 3, 2024

Conversation

eric-gade
Copy link
Collaborator

What does this PR do? 🛠️

This PR implements the testing pages outlined in #475

We made some additional important changes in order to make these testing pages possible:

  • Enabled Layout Builder and exported the config
  • Added a new content type called Testing Page just for these pages
  • Enabled Layout Builder only on the individual nodes of Testing Page instances
  • Created the testing pages using layout builder
  • Added custom URLs for each testing page for easier navigation

What does the reviewer need to know? 🤔

The config and content have both been exported, but a deployment will only import the config. Exported content must be manually imported in any deployed environment. So once this is fully committed to beta, we will need to also manually import the testing page content there as well.

Temporary Testing

For now, I have these pages deployed in my sandbox environment. See this slack post for the links.

-- What
Config has been updated with the following:
- A new Content Type called Testing Page
- Layout builder features enabled generally
- Layout builder enabled only on individual Testing Page nodes
Copy link
Member

@loganmcdonald-noaa loganmcdonald-noaa left a comment

Choose a reason for hiding this comment

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

Code Review Checklist

This is an automated comment on every pull request requiring a review. A checked item is either an assertion that I have tested this item or an indication that I have verified it does not apply to this pull request.

The Basics

  • Checks are passing
  • I read the code
  • I ran the code
  • (if applicable) Post deploy steps are run
  • (if applicable) I validated the change on the deployed version in

Documentation

  • changes to “how we do things” are documented in READMEs
  • all new functions and methods are commented using plain language
  • any new modules added documented in modules.md

Security

  • security false positives are documented
  • data from external sources is cleaned and clearly marked

Reliability

  • error handling exists for unusual or missing values
  • interactions with external systems are wrapped in try/except
  • functionality is tested with unit or integration tests
  • dependency updates in composer.json also got changed in composer-lock.json

Infrastructure

  • all changes are auditable and documented via a script
  • it is clear who can and should run the script
  • (if applicable) diagrams have been updated or added in PlantUML

Accessibility

  • New pages have been added to cypress-axe file so that they will be tested with our automated accessibility testing
  • Meets WCAG 2.0 AA or 2.1 AA for Section 508 compliance
    • Site is keyboard accessible. All interactions can be accessed with a keyboard
    • Site is free of keyboard traps. The keyboard focus is never trapped in a loop
    • All form inputs have explicit labels
    • Form instructions are associated with inputs
    • All relevant images use an img tag
    • All images have appropriate alt attributes
    • Multimedia is tagged. All multimedia has appropriate captioning and audio description
    • Text has sufficient color contrast. All text has a contrast ratio of 4.5:1 with the background
    • Site never loses focus. Focus is always visible when moving through the page with the keyboard
    • Tab order is logical
    • Tables are coded properly. Tables have proper headers and column attributes
    • Headings are nested properly. Heading elements are nested in a logical way
    • Language is set. The language for the page is set
    • CSS is not required to use the page. The page makes sense with or without CSS
    • Links are unique and contextual. All links can be understood taken alone, e.g., ‘Read more - about 508’
    • Page titles are descriptive

Device Matrix

  • firefox (renders correctly and user interactions work)
  • chrome/chromium/edge (renders correctly and user interactions work)
  • web page is readable and usable
    • at 480px
    • at 1024px

@loganmcdonald-noaa
Copy link
Member

Do we need to add the pages to accessibility testing or skip because they aren't pages that will be used other than by us?

@eric-gade
Copy link
Collaborator Author

@loganmcdonald-noaa good question. At first I thought "no need" since it's just us. But the pages are for testing, after all. The only problem is that the content needs to be imported in order for the page to exist, so we'd have to come back around to that issue after the first deployment

@eric-gade eric-gade added this pull request to the merge queue Jan 3, 2024
Merged via the queue into main with commit ab6b65f Jan 3, 2024
9 checks passed
@eric-gade eric-gade deleted the eg-testing-pages branch January 3, 2024 18:22
@colinmurphy01
Copy link
Collaborator

Confirming if we deploy this to beta, this just deploys the config and not the content and therefore the testing pages will not be visible in beta?

@eric-gade
Copy link
Collaborator Author

@colinmurphy01 that's correct. Content has to be manually imported

This pull request was closed.
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