batchCooking/apps/web/cypress/e2e/landing.ts
Nicolas 29bd413de3
All checks were successful
CI / lint (push) Successful in 3m3s
CI / build (push) Successful in 3m15s
CI / intent-service-test (push) Successful in 4m28s
CI / e2e (push) Successful in 9m31s
CI / test (push) Successful in 17m39s
CI / build-android (push) Has been skipped
fix(mobile): corrige les liens vers /releases/latest/download
Verifie en conditions reelles apres le premier vrai succes de bout en
bout de release.yml (v0.2.0, Release Forgejo #12 avec batchcooking.apk
attache) : Forgejo, contrairement a GitHub, n'implemente pas le
raccourci /releases/latest/download/<fichier>. Seul /releases/latest
lui-meme resout (redirige vers la page de la release) :

  /releases/latest/download/batchcooking.apk -> 404
  /releases/latest                            -> 303 vers /releases/tag/v0.2.0 (OK)
  /releases/download/v0.2.0/batchcooking.apk  -> 200 (OK, mais pas "latest")

Corrige les deux endroits qui presumaient le raccourci GitHub (issue #65
et #66, deja mergees) pour pointer vers /releases/latest tout court : un
clic de plus via la page de release Forgejo pour atteindre le fichier,
mais un lien qui resout toujours plutot qu'un raccourci qui 404 en
permanence. Met a jour le test Cypress de la page d'accueil et le
commentaire de release.yml en consequence.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-06 22:03:14 +02:00

29 lines
1.4 KiB
TypeScript

import { Then } from "@badeball/cypress-cucumber-preprocessor";
// Landing-page-specific steps. Everything else this feature needs
// (signing in / not, visiting a path, URL and heading assertions) comes
// from the shared `cypress/support/step_definitions/common.steps.ts`.
// Mocks nothing itself — the landing page makes no API calls of its own;
// it renders purely from the logged-out state `I am not signed in` sets up.
Then("I should see the landing call to action", () => {
cy.get(".landing__hero .landing__cta--primary")
.should("be.visible")
.and("have.attr", "href", "/signup");
cy.get(".landing__hero .landing__cta--secondary")
.should("be.visible")
.and("have.attr", "href", "/login");
});
// The Android build is distributed as a Forgejo release asset with a stable
// filename (issue #64 builds/attaches it). Points at the release page
// itself, not a direct file URL: Forgejo has no GitHub-style
// `/releases/latest/download/<file>` shortcut, only `/releases/latest`
// resolves (verified live against the first real release). We only assert
// the link is there and points at the right URL — the file itself is
// external to the suite.
Then("I should see the Android download link", () => {
cy.get(".landing__hero .landing__mobile-link")
.should("be.visible")
.and("have.attr", "href", "https://git.dev.kyuno.fr/kyuno/batchCooking/releases/latest");
});