Skip to content

Conversion forms have no tests #267

Description

@McCal-Codes

There is no ContactForm.test.tsx and no QuoteRequestForm.test.tsx — the latter is the largest form in the app. The server side of /api/contact is tested; the UI that feeds it is not.

Untested paths include the consent gate, the MIN_SUBMIT_DELAY_MS timing gate, honeypot wiring, non-OK response handling and network-failure copy.

All of src/components/scheduling/ was untested too, which is exactly why the booking outage shipped.

Related gaps:

  • Coverage thresholds sit at 20% with a comment admitting they are "intentionally low", and test:coverage is never invoked by any workflow
  • Playwright is four loose smoke tests, chromium-only, never on pull requests. Selectors like [class*="hero"] match almost anything against hashed CSS Module names, and the blog test passes even if the nav breaks entirely
  • The performance budget skips every gallery route and /one-nation-divided (1,148 lines), and because VERCEL_ENV is unset in CI it measures unoptimised originals rather than the AVIF/WebP path that actually serves production

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions