diff --git a/.env.example b/.env.example index 522e2ba05..2346067bd 100755 --- a/.env.example +++ b/.env.example @@ -51,6 +51,10 @@ GA_MEASUREMENT_ID='example' SMOKE_BASE_URL=http://localhost:3000 # Credentials for a dedicated smoke-test account. Keep real values in -# .env.development, which is gitignored - never commit them here. +# .env.development SMOKE_USER_EMAIL= -SMOKE_USER_PASSWORD= \ No newline at end of file +SMOKE_USER_PASSWORD= + +# Content the specs navigate to. Ids only - /grant/ and /proposal/ +SMOKE_GRANT_ID=33 +SMOKE_PROPOSAL_ID=5 diff --git a/components/Auth/screens/ForgotPassword.tsx b/components/Auth/screens/ForgotPassword.tsx index ef40bf126..11b649523 100644 --- a/components/Auth/screens/ForgotPassword.tsx +++ b/components/Auth/screens/ForgotPassword.tsx @@ -117,10 +117,16 @@ export default function ForgotPassword({ autoComplete="email" className="w-full p-3 border rounded" ref={emailInputRef} + data-testid="auth-forgot-email-input" /> - diff --git a/components/Auth/screens/Login.tsx b/components/Auth/screens/Login.tsx index 9db617cf0..fbe934a0d 100644 --- a/components/Auth/screens/Login.tsx +++ b/components/Auth/screens/Login.tsx @@ -240,6 +240,7 @@ export default function Login({ onClick={onForgotPassword} disabled={isLoading} className="text-rhBlue-500 hover:text-rhBlue-600 text-sm" + data-testid="auth-forgot-password" > Forgot your password? diff --git a/components/Auth/screens/Signup.tsx b/components/Auth/screens/Signup.tsx index 869a789e0..48db9b947 100644 --- a/components/Auth/screens/Signup.tsx +++ b/components/Auth/screens/Signup.tsx @@ -92,6 +92,7 @@ export default function Signup({ placeholder="Full name (e.g. John Smith)" className="w-full p-3 border rounded mb-4" ref={fullNameInputRef} + data-testid="auth-signup-name-input" />
@@ -101,6 +102,7 @@ export default function Signup({ onChange={(e) => setPassword(e.target.value)} placeholder="Password" className="w-full p-3 border rounded pr-12" + data-testid="auth-signup-password-input" /> diff --git a/components/Feed/items/FeedItemGrantWithApplicants.tsx b/components/Feed/items/FeedItemGrantWithApplicants.tsx index 96b79d9bf..c54b18586 100644 --- a/components/Feed/items/FeedItemGrantWithApplicants.tsx +++ b/components/Feed/items/FeedItemGrantWithApplicants.tsx @@ -171,6 +171,7 @@ export const FeedItemGrantWithApplicants: FC = 'bg-white rounded-[14px] overflow-hidden border border-gray-200 shadow-[0_1px_3px_rgba(0,0,0,0.04)]', className )} + data-testid="grant-card" > {/* Frosted header */} diff --git a/components/Funding/GrantSortAndFilters.tsx b/components/Funding/GrantSortAndFilters.tsx index 854f7b483..4475f29a6 100644 --- a/components/Funding/GrantSortAndFilters.tsx +++ b/components/Funding/GrantSortAndFilters.tsx @@ -38,6 +38,7 @@ function SortDropdown({ aria-haspopup="listbox" aria-expanded={isOpen} className="inline-flex items-center gap-1.5 -mr-2 min-h-[44px] px-2 rounded-lg text-sm text-gray-500 hover:text-gray-700 hover:bg-gray-50 active:bg-gray-100 transition-colors cursor-pointer touch-manipulation" + data-testid="feed-sort-trigger" > {selectedLabel} {isOpen ? : } diff --git a/components/Funding/ProposalSortAndFilters.tsx b/components/Funding/ProposalSortAndFilters.tsx index b91a74115..2cab9dfd1 100644 --- a/components/Funding/ProposalSortAndFilters.tsx +++ b/components/Funding/ProposalSortAndFilters.tsx @@ -34,6 +34,7 @@ function SortDropdown() { aria-haspopup="listbox" aria-expanded={isOpen} className="inline-flex items-center gap-1.5 -mr-2 min-h-[44px] px-2 rounded-lg text-sm text-gray-500 hover:text-gray-700 hover:bg-gray-50 active:bg-gray-100 transition-colors cursor-pointer touch-manipulation" + data-testid="feed-sort-trigger" > {selectedLabel} {isOpen ? : } diff --git a/components/Funding/ProposalWorkCard.tsx b/components/Funding/ProposalWorkCard.tsx index 2fcf39f43..a3b5e5317 100644 --- a/components/Funding/ProposalWorkCard.tsx +++ b/components/Funding/ProposalWorkCard.tsx @@ -91,7 +91,7 @@ export const ProposalWorkCard: FC = ({ entry, onNavigate }; return ( -
+
{activeTab === 'document' && (