# auth/email-signin.yaml # Tests: App starts → sign-in screen loads → email+password login succeeds → Home-Feed visible. # Pre-requisite: App installed, E2E_TEST_USER account exists on staging backend. # Env-Vars: E2E_TEST_USER (username without @rebreak.internal), E2E_TEST_PASSWORD # Expected outcome: "ReBreak" headline visible in AppHeader after login. # Note: No testIDs on signin inputs — text selectors match i18n keys from de.json. # Run with --env=E2E_LOCALE=de if CI device locale may differ. appId: org.rebreak.app --- - launchApp: clearState: true # Splash / font-load can take a moment - waitForAnimationToEnd: timeout: 5000 # Signin screen must appear immediately — no auth state after clearState. # TextInput placeholder = t('auth.emailPlaceholder') = "E-Mail" (de.json) - assertVisible: text: "E-Mail" - tapOn: text: "E-Mail" - inputText: ${E2E_TEST_USER}@rebreak.internal # Password input placeholder = t('auth.passwordPlaceholder') = "Passwort" (de.json) - tapOn: text: "Passwort" - inputText: ${E2E_TEST_PASSWORD} # Submit button text = t('auth.signin') = "Anmelden" (de.json) # Button is disabled until both fields have content — typing above enables it. - tapOn: text: "Anmelden" # Supabase auth + /api/auth/me call — allow network round-trip - waitForAnimationToEnd: timeout: 10000 # AppHeader shows t('appHeader.appName') = "ReBreak" (hardcoded fallback, de.json). # This text only appears in the authenticated Home layout. - assertVisible: text: "ReBreak"