UNPKG

@netdata/charts

Version:

Netdata frontend SDK and chart utilities

112 lines 3.63 kB
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } import { makeTestChart } from "@jest/testUtilities"; import tableChart from "./index"; describe("tableChart", function () { it("creates chart instance with required methods", function () { var _makeTestChart = makeTestChart(), sdk = _makeTestChart.sdk, chart = _makeTestChart.chart; var instance = tableChart(sdk, chart); expect(instance).toHaveProperty("mount"); expect(instance).toHaveProperty("unmount"); expect(instance).toHaveProperty("render"); expect(_typeof(instance.mount)).toBe("function"); expect(_typeof(instance.unmount)).toBe("function"); expect(_typeof(instance.render)).toBe("function"); }); it("mounts without errors", function () { var _makeTestChart2 = makeTestChart(), sdk = _makeTestChart2.sdk, chart = _makeTestChart2.chart; var instance = tableChart(sdk, chart); var element = document.createElement("div"); expect(function () { return instance.mount(element); }).not.toThrow(); }); it("renders without errors when chart is not loaded", function () { var _makeTestChart3 = makeTestChart({ attributes: { loaded: false } }), sdk = _makeTestChart3.sdk, chart = _makeTestChart3.chart; var instance = tableChart(sdk, chart); expect(function () { return instance.render(); }).not.toThrow(); }); it("renders without errors when chart is loaded", function () { var _makeTestChart4 = makeTestChart({ attributes: { loaded: true } }), sdk = _makeTestChart4.sdk, chart = _makeTestChart4.chart; chart.getPayload = function () { return { data: [[1617946860000, 10, 20]] }; }; chart.getClosestRow = function () { return 1; }; var instance = tableChart(sdk, chart); expect(function () { return instance.render(); }).not.toThrow(); }); it("handles hoverX attribute when rendering", function () { var _makeTestChart5 = makeTestChart({ attributes: { loaded: true, hoverX: [1617946865000] } }), sdk = _makeTestChart5.sdk, chart = _makeTestChart5.chart; chart.getPayload = function () { return { data: [[1617946860000, 10], [1617946870000, 20]] }; }; chart.getClosestRow = function () { return 0; }; var instance = tableChart(sdk, chart); expect(function () { return instance.render(); }).not.toThrow(); }); it("handles empty data gracefully", function () { var _makeTestChart6 = makeTestChart({ attributes: { loaded: true } }), sdk = _makeTestChart6.sdk, chart = _makeTestChart6.chart; chart.getPayload = function () { return { data: [] }; }; var instance = tableChart(sdk, chart); expect(function () { return instance.render(); }).not.toThrow(); }); it("unmounts without errors", function () { var _makeTestChart7 = makeTestChart(), sdk = _makeTestChart7.sdk, chart = _makeTestChart7.chart; var instance = tableChart(sdk, chart); var element = document.createElement("div"); instance.mount(element); expect(function () { return instance.unmount(); }).not.toThrow(); }); });