import { expect, test } from "@playwright/test"; test("shows inventory intelligence overview", async ({ page }) => { await page.goto("/"); await expect(page.getByRole("heading", { name: "Good morning, Nora" })).toBeVisible(); await expect(page.getByText("Inventory value")).toBeVisible(); await expect(page.getByText("Freshness watchlist")).toBeVisible(); }); test("opens every overview metric drill-down", async ({ page }) => { const metrics = [ { label: "Inventory value", path: "/metrics/inventory-value", heading: "Inventory value" }, { label: "Revenue · 30 days", path: "/metrics/revenue", heading: "Revenue · 30 days" }, { label: "At-risk exposure", path: "/metrics/at-risk", heading: "At-risk exposure" }, { label: "Average freshness", path: "/metrics/freshness", heading: "Average freshness" }, ]; for (const metric of metrics) { await page.goto("/"); await page.getByRole("link", { name: `View details for ${metric.label}` }).click(); await expect(page).toHaveURL(metric.path); await expect(page.getByRole("heading", { name: metric.heading })).toBeVisible(); } }); test("moves from inventory to a product", async ({ page }) => { await page.goto("/inventory"); await expect(page.getByRole("heading", { name: "Inventory" })).toBeVisible(); await page.getByRole("link", { name: "Organic Strawberries" }).first().click(); await expect(page.getByRole("heading", { name: "Organic Strawberries" })).toBeVisible(); }); test("reviews a recommendation", async ({ page }) => { await page.goto("/recommendations"); await expect(page.getByRole("heading", { name: "Recommendations" })).toBeVisible(); await page.getByRole("button", { name: "Reviewed" }).first().click(); await expect(page.getByText("reviewed").first()).toBeVisible(); });