Skip to content

Theme: add hover/focus/disabled/loading state regression coverage (#91 follow-up) #114

Closed

Description

@Xore

#91's own acceptance criteria calls for "Visual/DOM regression coverage includes default, hover, focus, disabled, loading, validation, error, and success states." Checked while closing out #91's remaining sub-items (account console theme, email theme): login.spec.ts and account.spec.ts both cover default/validation/error/success states thoroughly (screenshots + explicit computed-style/DOM assertions), and focus is exercised incidentally by keyboard-interaction tests (#103's staged identity/credential flow), but there is no explicit, intentional coverage of:

  • hover states on primary/secondary buttons and links
  • disabled states (submit-in-flight login.disabled = true, disabled form controls)
  • loading/busy states (xore-auth.js's WebAuthn busy-state visual, form submission pending state)

None of this is a known theme bug -- it's an acceptance-criterion gap in test coverage, found while doing a final pass before closing #91, not scope-crept into that close-out. Proposed: add page.hover()/forced-state (:hover/:focus-visible via page.locator(...).evaluate class injection or real interaction) screenshot + computed-style assertions to login.spec.ts for the primary/secondary button treatments already documented in login.css's own comments (the ::after-pseudo-element custom-property indirection), plus a real slow-network-simulated or artificially-delayed submit to exercise the disabled/loading state.

Activity

  1. Xore commented on Aug 15, 2026

    @Xore
    OwnerAuthor

    Fixed in #115: hover/focus/disabled/loading state coverage added to login.spec.ts.

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

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions