Files

38 lines
1.8 KiB
JavaScript

import { createSpreadsheetFromGraphView } from "@documents_spreadsheet/../tests/helpers/chart_helpers";
import { describe, expect, test } from "@odoo/hoot";
import * as spreadsheet from "@odoo/o-spreadsheet";
import { defineDocumentSpreadsheetModels } from "@documents_spreadsheet/../tests/helpers/data";
import { doMenuAction } from "@spreadsheet/../tests/helpers/ui";
const { topbarMenuRegistry } = spreadsheet.registries;
defineDocumentSpreadsheetModels();
describe.current.tags("desktop");
test("Verify presence of chart in top menu bar in a spreadsheet with a chart", async function () {
const { model, env } = await createSpreadsheetFromGraphView();
const sheetId = model.getters.getActiveSheetId();
const chartId = model.getters.getChartIds(sheetId)[0];
const root = topbarMenuRegistry.getMenuItems().find((item) => item.id === "data");
const children = root.children(env);
const chartItem = children.find((c) => c.id === `item_chart_${chartId}`);
expect(chartItem).not.toBe(undefined);
expect(chartItem.name(env)).toBe("(#1) PartnerGraph");
});
test("Chart focus changes on top bar menu click", async function () {
const { model, env } = await createSpreadsheetFromGraphView();
const sheetId = model.getters.getActiveSheetId();
const chartId = model.getters.getChartIds(sheetId)[0];
env.openSidePanel("ChartPanel");
expect(model.getters.getSelectedFigureId()).toBe(null, {
message: "No chart should be selected",
});
await doMenuAction(topbarMenuRegistry, ["data", `item_chart_${chartId}`], env);
const selectedFigureId = model.getters.getSelectedFigureId();
expect(model.getters.getChartIdFromFigureId(selectedFigureId)).toBe(chartId, {
message: "The selected chart should have id " + chartId,
});
});