@netdata/charts
Version:
Netdata frontend SDK and chart utilities
51 lines • 2.13 kB
JavaScript
import React from "react";
import { screen } from "@testing-library/react";
import "@testing-library/jest-dom";
import { renderWithChart } from "@jest/testUtilities";
import Dimensions from "./index";
import { jsx as _jsx } from "react/jsx-runtime";
describe("Dimensions", function () {
var mockData = [[1617946860000, 25, 50, 75], [1617946920000, 30, 55, 70], [1617946980000, 20, 45, 80], [1617947040000, 35, 60, 65]];
beforeEach(function () {
jest.clearAllMocks();
});
it("renders dimensions table with window period by default", function () {
var _renderWithChart = renderWithChart(/*#__PURE__*/_jsx(Dimensions, {})),
chart = _renderWithChart.chart;
jest.spyOn(chart, "getPayload").mockReturnValue({
data: mockData
});
jest.spyOn(chart, "getDimensionIds").mockReturnValue(["dim1", "dim2"]);
expect(screen.getByText("Window points")).toBeInTheDocument();
});
it("shows selected area header when selectedArea tab is active", function () {
var _renderWithChart2 = renderWithChart(/*#__PURE__*/_jsx(Dimensions, {}), {
attributes: {
drawer: {
tab: "selectedArea"
}
}
}),
chart = _renderWithChart2.chart;
jest.spyOn(chart, "getPayload").mockReturnValue({
data: mockData
});
jest.spyOn(chart, "getDimensionIds").mockReturnValue(["dim1", "dim2"]);
expect(screen.getByText("Selected area points")).toBeInTheDocument();
});
it("renders table with dimension data", function () {
var _renderWithChart3 = renderWithChart(/*#__PURE__*/_jsx(Dimensions, {})),
chart = _renderWithChart3.chart;
jest.spyOn(chart, "getPayload").mockReturnValue({
data: mockData
});
jest.spyOn(chart, "getDimensionIds").mockReturnValue(["cpu", "memory"]);
jest.spyOn(chart, "getDimensionName").mockImplementation(function (id) {
return id;
});
expect(screen.getByText("Name")).toBeInTheDocument();
expect(screen.getByText("Min")).toBeInTheDocument();
expect(screen.getByText("Avg")).toBeInTheDocument();
expect(screen.getByText("Max")).toBeInTheDocument();
});
});