feat(frontend): démarrage auto du serveur + erreur port occupé actionnable (#89)
Étend ServerExposureSettings avec autoStart (défaut false, mock aligné sur le backend). useDeployment expose setAutoStart, qui persiste immédiatement le draft sans jamais appeler start() ni toucher le comportement de stop(), et ne met à jour l'état local qu'après confirmation de la sauvegarde (même piste de validation que start/save). DeploymentSettings ajoute la case à cocher sous le panneau Serveur, et des actions « Modifier le port »/« Réessayer » quand le statut échoue avec le code PORT_IN_USE stabilisé côté backend. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@ -42,8 +42,20 @@ describe("the Deployment surface is desktop-only", () => {
|
||||
() => gateway.status(),
|
||||
() => gateway.start(),
|
||||
() => gateway.stop(),
|
||||
() => gateway.saveExposureSettings({ mode: "localOnly", port: 0, trustedProxies: [] }),
|
||||
() => gateway.previewExposure({ mode: "localOnly", port: 0, trustedProxies: [] }),
|
||||
() =>
|
||||
gateway.saveExposureSettings({
|
||||
mode: "localOnly",
|
||||
autoStart: false,
|
||||
port: 0,
|
||||
trustedProxies: [],
|
||||
}),
|
||||
() =>
|
||||
gateway.previewExposure({
|
||||
mode: "localOnly",
|
||||
autoStart: false,
|
||||
port: 0,
|
||||
trustedProxies: [],
|
||||
}),
|
||||
]) {
|
||||
const error: Partial<GatewayError> = { code: "UNSUPPORTED_ON_WEB" };
|
||||
await expect(call()).rejects.toMatchObject(error);
|
||||
|
||||
Reference in New Issue
Block a user