文件操作 - metrics_panel_ctrl.test.ts
返回文件管理
返回主菜单
删除本文件
文件: /usr/share/grafana/public/app/features/panel/specs/metrics_panel_ctrl.test.ts
编辑文件内容
jest.mock('app/core/core', () => ({})); jest.mock('app/core/config', () => { return { bootData: { user: {}, }, panels: { test: { id: 'test', name: 'test', }, }, config: { appSubUrl: 'test', }, }; }); // @ts-ignore import q from 'q'; import { PanelModel } from 'app/features/dashboard/state/PanelModel'; import { MetricsPanelCtrl } from '../metrics_panel_ctrl'; describe('MetricsPanelCtrl', () => { describe('can setup', () => { it('should return controller', async () => { const ctrl = setupController({ hasAccessToExplore: true }); expect((await ctrl.getAdditionalMenuItems()).length).toBe(0); }); }); }); function setupController({ hasAccessToExplore } = { hasAccessToExplore: false }) { const injectorStub = { get: (type: any) => { switch (type) { case '$q': { return q; } case 'contextSrv': { return { hasAccessToExplore: () => hasAccessToExplore }; } case 'timeSrv': { return { timeRangeForUrl: () => {} }; } default: { return jest.fn(); } } }, }; const scope: any = { panel: { events: [] }, appEvent: jest.fn(), onAppEvent: jest.fn(), $on: jest.fn(), colors: [], }; MetricsPanelCtrl.prototype.panel = new PanelModel({ type: 'test' }); return new MetricsPanelCtrl(scope, injectorStub); }
修改文件时间
将文件时间修改为当前时间的前一年
删除文件