From 3a56398a3d707ecc84079a82a9013fee93f229ff Mon Sep 17 00:00:00 2001 From: amlannandy Date: Mon, 2 Jun 2025 23:09:53 +0700 Subject: [PATCH] chore: fix UTs --- .../Summary/__tests__/MetricsTable.test.tsx | 12 +++++ .../Summary/__tests__/utils.test.tsx | 52 ++++++++++++------- 2 files changed, 46 insertions(+), 18 deletions(-) diff --git a/frontend/src/container/MetricsExplorer/Summary/__tests__/MetricsTable.test.tsx b/frontend/src/container/MetricsExplorer/Summary/__tests__/MetricsTable.test.tsx index 88834b0400..776c236532 100644 --- a/frontend/src/container/MetricsExplorer/Summary/__tests__/MetricsTable.test.tsx +++ b/frontend/src/container/MetricsExplorer/Summary/__tests__/MetricsTable.test.tsx @@ -4,6 +4,7 @@ import * as useQueryBuilderOperationsHooks from 'hooks/queryBuilder/useQueryBuil import { Provider } from 'react-redux'; import { MemoryRouter } from 'react-router-dom'; import store from 'store'; +import { TagFilter } from 'types/api/queryBuilder/queryBuilderData'; import MetricsTable from '../MetricsTable'; import { MetricsListItemRowData } from '../types'; @@ -29,6 +30,11 @@ const mockData: MetricsListItemRowData[] = [ }, ]; +const mockQueryFilters: TagFilter = { + items: [], + op: 'AND', +}; + jest.mock('react-router-dom-v5-compat', () => { const actual = jest.requireActual('react-router-dom-v5-compat'); return { @@ -76,6 +82,7 @@ describe('MetricsTable', () => { setOrderBy={jest.fn()} totalCount={2} openMetricDetails={jest.fn()} + queryFilters={mockQueryFilters} /> , @@ -99,6 +106,7 @@ describe('MetricsTable', () => { setOrderBy={jest.fn()} totalCount={2} openMetricDetails={jest.fn()} + queryFilters={mockQueryFilters} isLoading /> @@ -122,6 +130,7 @@ describe('MetricsTable', () => { setOrderBy={jest.fn()} totalCount={2} openMetricDetails={jest.fn()} + queryFilters={mockQueryFilters} /> , @@ -149,6 +158,7 @@ describe('MetricsTable', () => { setOrderBy={jest.fn()} totalCount={2} openMetricDetails={jest.fn()} + queryFilters={mockQueryFilters} /> , @@ -177,6 +187,7 @@ describe('MetricsTable', () => { setOrderBy={jest.fn()} totalCount={2} openMetricDetails={mockOpenMetricDetails} + queryFilters={mockQueryFilters} /> , @@ -201,6 +212,7 @@ describe('MetricsTable', () => { setOrderBy={mockSetOrderBy} totalCount={2} openMetricDetails={jest.fn()} + queryFilters={mockQueryFilters} /> , diff --git a/frontend/src/container/MetricsExplorer/Summary/__tests__/utils.test.tsx b/frontend/src/container/MetricsExplorer/Summary/__tests__/utils.test.tsx index da63bd44a6..ee29782b4a 100644 --- a/frontend/src/container/MetricsExplorer/Summary/__tests__/utils.test.tsx +++ b/frontend/src/container/MetricsExplorer/Summary/__tests__/utils.test.tsx @@ -1,45 +1,61 @@ import { Color } from '@signozhq/design-tokens'; import { render } from '@testing-library/react'; import { MetricType } from 'api/metricsExplorer/getMetricsList'; +import { TagFilter } from 'types/api/queryBuilder/queryBuilderData'; import { TreemapViewType } from '../types'; import { formatDataForMetricsTable, - metricsTableColumns, + getMetricsTableColumns, MetricTypeRenderer, } from '../utils'; describe('metricsTableColumns', () => { + const mockQueryFilters: TagFilter = { + items: [], + op: 'AND', + }; + it('should have correct column definitions', () => { - expect(metricsTableColumns).toHaveLength(6); + expect(getMetricsTableColumns(mockQueryFilters)).toHaveLength(6); // Metric Name column - expect(metricsTableColumns[0].dataIndex).toBe('metric_name'); - expect(metricsTableColumns[0].width).toBe(400); - expect(metricsTableColumns[0].sorter).toBe(false); + expect(getMetricsTableColumns(mockQueryFilters)[0].dataIndex).toBe( + 'metric_name', + ); + expect(getMetricsTableColumns(mockQueryFilters)[0].width).toBe(400); + expect(getMetricsTableColumns(mockQueryFilters)[0].sorter).toBe(false); // Description column - expect(metricsTableColumns[1].dataIndex).toBe('description'); - expect(metricsTableColumns[1].width).toBe(400); + expect(getMetricsTableColumns(mockQueryFilters)[1].dataIndex).toBe( + 'description', + ); + expect(getMetricsTableColumns(mockQueryFilters)[1].width).toBe(400); // Type column - expect(metricsTableColumns[2].dataIndex).toBe('metric_type'); - expect(metricsTableColumns[2].width).toBe(150); - expect(metricsTableColumns[2].sorter).toBe(false); + expect(getMetricsTableColumns(mockQueryFilters)[2].dataIndex).toBe( + 'metric_type', + ); + expect(getMetricsTableColumns(mockQueryFilters)[2].width).toBe(150); + expect(getMetricsTableColumns(mockQueryFilters)[2].sorter).toBe(false); // Unit column - expect(metricsTableColumns[3].dataIndex).toBe('unit'); - expect(metricsTableColumns[3].width).toBe(150); + expect(getMetricsTableColumns(mockQueryFilters)[3].dataIndex).toBe('unit'); + expect(getMetricsTableColumns(mockQueryFilters)[3].width).toBe(150); // Samples column - expect(metricsTableColumns[4].dataIndex).toBe(TreemapViewType.SAMPLES); - expect(metricsTableColumns[4].width).toBe(150); - expect(metricsTableColumns[4].sorter).toBe(true); + expect(getMetricsTableColumns(mockQueryFilters)[4].dataIndex).toBe( + TreemapViewType.SAMPLES, + ); + expect(getMetricsTableColumns(mockQueryFilters)[4].width).toBe(150); + expect(getMetricsTableColumns(mockQueryFilters)[4].sorter).toBe(true); // Time Series column - expect(metricsTableColumns[5].dataIndex).toBe(TreemapViewType.TIMESERIES); - expect(metricsTableColumns[5].width).toBe(150); - expect(metricsTableColumns[5].sorter).toBe(true); + expect(getMetricsTableColumns(mockQueryFilters)[5].dataIndex).toBe( + TreemapViewType.TIMESERIES, + ); + expect(getMetricsTableColumns(mockQueryFilters)[5].width).toBe(150); + expect(getMetricsTableColumns(mockQueryFilters)[5].sorter).toBe(true); }); describe('MetricTypeRenderer', () => {