// @vitest-environment jsdom import { screen } from "@testing-library/react"; import { describe, expect, it, vi } from "vitest"; import { renderWithProviders } from "test-utils/render-with-providers"; vi.mock("./metrics/info", () => ({ default: () =>
glances-info
})); vi.mock("./metrics/memory", () => ({ default: () =>
glances-memory
})); vi.mock("./metrics/process", () => ({ default: () =>
glances-process
})); vi.mock("./metrics/containers", () => ({ default: () =>
glances-containers
})); vi.mock("./metrics/cpu", () => ({ default: () =>
glances-cpu
})); vi.mock("./metrics/net", () => ({ default: () =>
glances-net
})); vi.mock("./metrics/sensor", () => ({ default: () =>
glances-sensor
})); vi.mock("./metrics/disk", () => ({ default: () =>
glances-disk
})); vi.mock("./metrics/gpu", () => ({ default: () =>
glances-gpu
})); vi.mock("./metrics/fs", () => ({ default: () =>
glances-fs
})); import Component from "./component"; describe("widgets/glances/component", () => { it("routes metric=info to Info", () => { renderWithProviders(, { settings: { hideErrors: false }, }); expect(screen.getByText("glances-info")).toBeInTheDocument(); }); it("routes metric=cpu to Cpu", () => { renderWithProviders(, { settings: { hideErrors: false }, }); expect(screen.getByText("glances-cpu")).toBeInTheDocument(); }); it("routes metric patterns (network:, sensor:, disk:, gpu:, fs:) to their modules", () => { const { rerender } = renderWithProviders( , { settings: { hideErrors: false }, }, ); expect(screen.getByText("glances-net")).toBeInTheDocument(); rerender(); expect(screen.getByText("glances-sensor")).toBeInTheDocument(); rerender(); expect(screen.getByText("glances-disk")).toBeInTheDocument(); rerender(); expect(screen.getByText("glances-gpu")).toBeInTheDocument(); rerender(); expect(screen.getByText("glances-fs")).toBeInTheDocument(); }); });