mirror of
https://github.com/grafana/grafana.git
synced 2025-02-13 00:55:47 -06:00
* Push values with every map call to avoid hitting the maximum call stack size. * Add test and refactor to for of * Use native fill instead of lodash --------- Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
24 lines
768 B
TypeScript
24 lines
768 B
TypeScript
import { DataFrameDTO, FieldType, MutableDataFrame } from '@grafana/data';
|
|
|
|
import { ResponseParser } from './ResponseParser';
|
|
|
|
describe('transformMetricFindResponse function', () => {
|
|
it('should handle big arrays', () => {
|
|
const responseParser = new ResponseParser();
|
|
const stringValues = new Array(150_000).fill('a');
|
|
const numberValues = new Array(150_000).fill(1);
|
|
|
|
const frame: DataFrameDTO = {
|
|
fields: [
|
|
{ name: 'name', type: FieldType.string, values: stringValues },
|
|
{ name: 'value', type: FieldType.number, values: numberValues },
|
|
],
|
|
};
|
|
|
|
const dataFrame = new MutableDataFrame(frame);
|
|
const result = responseParser.transformMetricFindResponse(dataFrame);
|
|
|
|
expect(result).toHaveLength(2);
|
|
});
|
|
});
|