From 7175db33f7faddcb3e6b630e1621e695301b806d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Fri, 7 Aug 2026 03:56:17 +0200 Subject: [PATCH] test: drop an assertion that could not fail The pending-acceptance note renders unconditionally inside the invite form, so asserting it after the invitation proved a string existed rather than anything the journey did. The claim moves onto the pending row, which the server has to produce. The note keeps its own leg in the unit suite, where deleting the node makes it red. --- e2e/v137-sharing-managed-profiles.spec.ts | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/e2e/v137-sharing-managed-profiles.spec.ts b/e2e/v137-sharing-managed-profiles.spec.ts index 2874707b4..5ad2d5f0a 100644 --- a/e2e/v137-sharing-managed-profiles.spec.ts +++ b/e2e/v137-sharing-managed-profiles.spec.ts @@ -650,21 +650,29 @@ test.describe.serial("managed profile browser journey", () => { guardians.locator('[data-slot="managed-profile-guardian-invited"]'), ).toBeVisible(); - // The roster shows them, pending. + // The roster shows them, and shows them as PENDING — which is the release + // goal's sentence in the only form a browser can falsify: the invitation + // reached the server, came back as a grant that confers nothing yet, and + // the panel says which of the two states it is in. Delete the invitation + // feature and this line goes red. await expect( guardians.locator( '[data-slot="managed-profile-guardian"][data-guardian-state="PENDING"]', ), ).toHaveCount(1); - // And the floor is unchanged, because a pending invitation does not count. - // This is the sentence the release goal asks for: stated before the act, - // not discovered as a 409 after it. + // And the floor is unchanged BECAUSE of that state: the sole-guardian + // sentence is still on screen with a second person already invited. + // + // The `managed-profile-pending-note` line that used to sit here was + // removed rather than kept. That node renders unconditionally inside the + // invite form, so the assertion passed with the invitation feature deleted + // — it proved the copy exists, which is a claim about a string and not + // about anything the journey did. The note's own leg lives in + // `managed-profile-affordances.test.tsx`, where deleting the node makes it + // fail; here it would only have been a second look at the same string. await expect( guardians.locator('[data-slot="managed-profile-sole-guardian"]'), ).toBeVisible(); - await expect( - guardians.locator('[data-slot="managed-profile-pending-note"]'), - ).toBeVisible(); }); });