You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

87 lines
2.3 KiB

import { PanelModel } from '@grafana/data';
import { statPanelChangedHandler } from './StatMigrations';
import { BigValueGraphMode, BigValueColorMode } from '@grafana/ui';
import { BigValueTextMode } from '@grafana/ui/src/components/BigValue/BigValue';
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);
});
});