Repository navigation
URL de la boutique et du back-office dans le fichier de suite - #123
Merged
Merged
Conversation
… suite ($shopUrl, $backOfficeUrl) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ant $shopUrl, refus des blancs et des hôtes absents Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Objectif
Une suite visuelle peut porter dans son fichier son URL de la boutique et son URL du back-office. Un run en CI avec la lib seule vise alors la même boutique que l'éditeur de l'app.
Changements
VisualTestsSuitegagne deux propriétés :protected ?string $shopUrl = null;etprotected ?string $backOfficeUrl = null;.applySuiteUrls()est publique et idempotente. Elle est appelée parinit()etopenBackOfficeCheckpoint()avant l'import des pages, et applique les propriétés par-dessus les globals reçues (app ou environnement) :null, vide ou blanche laisse les globals inchangées, donc les suites existantes ne changent pas ;$shopUrlremplaceFO.URL, avec un « / » final ;$backOfficeUrlremplaceBO.URL. Une valeur relative est complétée par l'URL FO effective, avec la règle deApp\Support\BackOfficeUrl::resolveexposée parresolveBackOfficeUrl(): le chemin FO est gardé, la requête et le fragment sont retirés, et//hôteprend le schéma FO ;$shopUrlest déclaré, une BO d'environnement relative (ouadmin-dev/par défaut) suit la nouvelle URL FO.InvalidArgumentException). Le message nomme la propriété, jamais la valeur :user:pass@) : l'authentification HTTP passe parPRESTAFLOW_BASIC_*;http(s), un blanc interne ou un hôte absent ;?ou un#dans$shopUrl;BackOfficeUrl::isValidde l'app) ;http(s).docs/superpowers/specs/2026-10-07-suite-urls-design.md.Tests
668 tests verts en PHP 8.4 et 8.1, dont 44 dans
VisualTestsSuiteUrlsTest: parité avec les cas deBackOfficeUrlTestde l'app, refus sans valeur dans le message, CLI avec$shopUrlseul. Aucun test ne lance Chrome.🤖 Generated with Claude Code