mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-07-26 09:54:27 +08:00

* feat: dashboard widget page is refactored * chore: key is updated * chore: delete widget is updated * chore: naming of the file is updated * feat: dashboard changes are updated and selected dashboard and dashboardId is added * chore: dashboard widget page is updated * feat: setlayout is updated * chore: selected dashboard is updated * chore: dashboard is updated * fix: feedback is updated * chore: comments are resolved * chore: empty widget id is updated * fix: variables is updated * chore: dashboard variable and name,description is now updated in hooks * chore: build is fixed * chore: loading experience is updated * chore: title is updated * fix: dashboard variables and other changes are updated * feat: dashboard reducer is removed * feat: widget header is updated * feat: widget header is updated * chore: dashboard is updated * chore: feedback is updated * fix: issues are fixed * chore: delete is updated * chore: warning message is updated * chore: warning message is updated * chore: widget graph component * feat: dashboard condition is updated * chore: getChartData is updated * chore: widget details page is updated * feat: tab sync is updated * chore: layout is updated * chore: labels is updated * chore: message is updated * chore: warining message is updated --------- Co-authored-by: Rajat Dabade <rajat@signoz.io> Co-authored-by: Vishal Sharma <makeavish786@gmail.com>
63 lines
1.9 KiB
TypeScript
63 lines
1.9 KiB
TypeScript
import { mockTestData } from './__mock__/mockChartData';
|
|
import { mocklegendEntryResult } from './__mock__/mockLegendEntryData';
|
|
import { showAllDataSet } from './FullView/utils';
|
|
import { getGraphVisibilityStateOnDataChange } from './utils';
|
|
|
|
describe('getGraphVisibilityStateOnDataChange', () => {
|
|
beforeEach(() => {
|
|
const localStorageMock = {
|
|
getItem: jest.fn(),
|
|
};
|
|
Object.defineProperty(window, 'localStorage', { value: localStorageMock });
|
|
});
|
|
|
|
it('should return the correct visibility state and legend entry', () => {
|
|
// Mock the localStorage behavior
|
|
const mockLocalStorageData = [
|
|
{
|
|
name: 'exampleexpanded',
|
|
dataIndex: [
|
|
{ label: 'customer', show: true },
|
|
{ label: 'demo-app', show: false },
|
|
],
|
|
},
|
|
];
|
|
jest
|
|
.spyOn(window.localStorage, 'getItem')
|
|
.mockReturnValue(JSON.stringify(mockLocalStorageData));
|
|
|
|
const result1 = getGraphVisibilityStateOnDataChange({
|
|
data: mockTestData,
|
|
isExpandedName: true,
|
|
name: 'example',
|
|
});
|
|
expect(result1.graphVisibilityStates).toEqual([true, false]);
|
|
expect(result1.legendEntry).toEqual(mocklegendEntryResult);
|
|
|
|
const result2 = getGraphVisibilityStateOnDataChange({
|
|
data: mockTestData,
|
|
isExpandedName: false,
|
|
name: 'example',
|
|
});
|
|
expect(result2.graphVisibilityStates).toEqual(
|
|
Array(mockTestData.datasets.length).fill(true),
|
|
);
|
|
expect(result2.legendEntry).toEqual(showAllDataSet(mockTestData));
|
|
});
|
|
|
|
it('should return default values if localStorage data is not available', () => {
|
|
// Mock the localStorage behavior to return null
|
|
jest.spyOn(window.localStorage, 'getItem').mockReturnValue(null);
|
|
|
|
const result = getGraphVisibilityStateOnDataChange({
|
|
data: mockTestData,
|
|
isExpandedName: true,
|
|
name: 'example',
|
|
});
|
|
expect(result.graphVisibilityStates).toEqual(
|
|
Array(mockTestData.datasets.length).fill(true),
|
|
);
|
|
expect(result.legendEntry).toEqual(showAllDataSet(mockTestData));
|
|
});
|
|
});
|