mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-08 20:42:43 +00:00
test(02-12): retire sharing inventory anchors
- remove obsolete inventory-only journey declarations\n- select persistent shared-record journeys by Playwright project config
This commit is contained in:
1 parent
9bb1e5b2ea
commit
b231a7892c
5 files changed
+8
-88
No files matched your search
@@ -34,13 +34,6 @@ test.describe("shared record accessibility states", () => {
|
||||
test.describe.configure({ mode: "serial" });
|
||||
test.use({ storageState: SCOPE_A11Y_STORAGE_STATE_PATH });
|
||||
|
||||
test.beforeEach(({}, testInfo) => {
|
||||
test.skip(
|
||||
testInfo.project.name !== "chromium-desktop",
|
||||
"isolated shared-record accessibility session",
|
||||
);
|
||||
});
|
||||
|
||||
test("success and empty shared profile states have no WCAG violations", async ({
|
||||
page,
|
||||
}) => {
|
||||
|
||||
@@ -29,13 +29,6 @@ test.describe("scoped sharing browser journeys", () => {
|
||||
test.describe.configure({ mode: "serial" });
|
||||
test.use({ storageState: SCOPE_DELEGATE_STORAGE_STATE_PATH });
|
||||
|
||||
test.beforeEach(({}, testInfo) => {
|
||||
test.skip(
|
||||
testInfo.project.name !== "chromium-desktop",
|
||||
"scoped sharing seed has one session and runs once",
|
||||
);
|
||||
});
|
||||
|
||||
for (const record of E2E_SCOPE_RECORDS) {
|
||||
test(`opens only the ${record.domain} record doorway`, async ({ page }) => {
|
||||
await page.goto("/");
|
||||
|
||||
@@ -83,6 +83,14 @@ export default defineConfig({
|
||||
},
|
||||
{
|
||||
name: "chromium-mobile",
|
||||
// The scoped-sharing journeys each carry a persistent server-side
|
||||
// session stamp. They use isolated desktop jars and are not responsive
|
||||
// layout checks, so running a second project against the same stamps
|
||||
// would test session interference rather than the record journeys.
|
||||
testIgnore: [
|
||||
"v137-sharing-managed-profiles.spec.ts",
|
||||
"v137-sharing-managed-profiles-a11y.spec.ts",
|
||||
],
|
||||
use: {
|
||||
// Pixel 5 — Chromium-based mobile profile so CI only needs
|
||||
// `playwright install chromium` instead of also pulling
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
import { readFileSync } from "node:fs";
|
||||
import { join } from "node:path";
|
||||
|
||||
import { describe, expect, it } from "vitest";
|
||||
|
||||
import {
|
||||
@@ -13,10 +10,6 @@ import {
|
||||
NOTIFICATION_CHANNELS,
|
||||
NOTIFICATION_DELIVERY_MATRIX,
|
||||
} from "../../tests/fixtures/v137/notification-matrix";
|
||||
import {
|
||||
ACCESSIBILITY_STATES,
|
||||
RELEASE_JOURNEYS,
|
||||
} from "../../tests/fixtures/v137/e2e-journeys";
|
||||
|
||||
describe("sharing and handler inventories", () => {
|
||||
it("freezes the exact sharing-domain vocabulary", () => {
|
||||
@@ -104,28 +97,3 @@ describe("security principals and compatibility", () => {
|
||||
expect(LEGACY_ACCOUNT_PAYLOADS[3]?.legacyDecoder).toBe("deny");
|
||||
});
|
||||
});
|
||||
|
||||
describe("journey and accessibility inventory", () => {
|
||||
it("names every release journey and accessibility state exactly once", () => {
|
||||
expect(RELEASE_JOURNEYS).toHaveLength(8);
|
||||
expect(ACCESSIBILITY_STATES).toHaveLength(5);
|
||||
expect(new Set(RELEASE_JOURNEYS.map(({ name }) => name)).size).toBe(
|
||||
RELEASE_JOURNEYS.length,
|
||||
);
|
||||
expect(new Set(ACCESSIBILITY_STATES.map(({ name }) => name)).size).toBe(
|
||||
ACCESSIBILITY_STATES.length,
|
||||
);
|
||||
});
|
||||
|
||||
it("leaves the browser anchors discoverable without focused or skipped cases", () => {
|
||||
const anchorFiles = [
|
||||
"v137-sharing-managed-profiles.spec.ts",
|
||||
"v137-sharing-managed-profiles-a11y.spec.ts",
|
||||
];
|
||||
|
||||
for (const file of anchorFiles) {
|
||||
const source = readFileSync(join(process.cwd(), "e2e", file), "utf8");
|
||||
expect(source).not.toMatch(/\b(?:test|describe)\.(?:only|skip)\b/);
|
||||
}
|
||||
});
|
||||
});
|
||||
Vendored
-42
@@ -1,42 +0,0 @@
|
||||
export const RELEASE_JOURNEYS = [
|
||||
{
|
||||
name: "adult-full-read-scoped-read-write-and-manage",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
{
|
||||
name: "manage-mutation-activity-and-fenced-settings",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
{
|
||||
name: "managed-profile-two-guardian-lifecycle",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
{
|
||||
name: "two-guardian-two-record-notification-delivery",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
{
|
||||
name: "revoked-manage-idempotency-replay",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
{
|
||||
name: "delegate-provider-no-egress-owner-positive",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
{
|
||||
name: "durable-import-actor-attribution",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
{
|
||||
name: "legacy-client-compatibility",
|
||||
contract: "inventory-only",
|
||||
},
|
||||
] as const;
|
||||
|
||||
export const ACCESSIBILITY_STATES = [
|
||||
{ name: "success", contract: "inventory-only" },
|
||||
{ name: "empty", contract: "inventory-only" },
|
||||
{ name: "loading", contract: "inventory-only" },
|
||||
{ name: "error", contract: "inventory-only" },
|
||||
{ name: "refusal", contract: "inventory-only" },
|
||||
] as const;
|
||||
Reference in new issue
Block a user