grafana/public/app/plugins/panel/stat/StatMigrations.test.ts
Josh Hunt 9092150143
Cue: Update Text, Stat, and Annolist panel cue schemas (#49479)
* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

lastFile:public/app/plugins/panel/stat/types.ts

* user essentials mob! 🔱

* user essentials mob! 🔱

* Use generate defaults, and fix a few remaining issues

* Add annolist to dashboard dist plugins

* minor fixes

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: sam boyer <sdboyer@grafana.com>
2022-05-25 12:07:32 +01:00

88 lines
2.2 KiB
TypeScript

import { PanelModel } from '@grafana/data';
import { BigValueGraphMode, BigValueColorMode, BigValueTextMode } from '@grafana/schema';
import { statPanelChangedHandler } from './StatMigrations';
describe('Stat Panel Migrations', () => {
it('change from angular singlestat sparkline disabled', () => {
const old: any = {
angular: {
format: 'ms',
decimals: 7,
sparkline: {
show: false,
},
},
};
const panel = {} as PanelModel;
const options = statPanelChangedHandler(panel, 'singlestat', old);
expect(options.graphMode).toBe(BigValueGraphMode.None);
});
it('change from angular singlestat sparkline enabled', () => {
const old: any = {
angular: {
format: 'ms',
decimals: 7,
sparkline: {
show: true,
},
},
};
const panel = {} as PanelModel;
const options = statPanelChangedHandler(panel, 'singlestat', old);
expect(options.graphMode).toBe(BigValueGraphMode.Area);
});
it('change from angular singlestat color background', () => {
const old: any = {
angular: {
format: 'ms',
decimals: 7,
colorBackground: true,
},
};
const panel = {} as PanelModel;
const options = statPanelChangedHandler(panel, 'singlestat', old);
expect(options.colorMode).toBe(BigValueColorMode.Background);
});
it('change from angular singlestat with name stat', () => {
const old: any = {
angular: {
valueName: 'name',
},
};
const panel = {} as PanelModel;
const options = statPanelChangedHandler(panel, 'singlestat', old);
expect(options.textMode).toBe(BigValueTextMode.Name);
});
it('use no color unless one was configured', () => {
let old: any = {
angular: {
valueName: 'name',
},
};
let panel = {} as PanelModel;
let options = statPanelChangedHandler(panel, 'singlestat', old);
expect(options.colorMode).toBe(BigValueColorMode.None);
old = {
angular: {
valueName: 'name',
colorBackground: true,
},
};
panel = {} as PanelModel;
options = statPanelChangedHandler(panel, 'singlestat', old);
expect(options.colorMode).toBe(BigValueColorMode.Background);
});
});