mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Transformations: Fix series to rows to work with only one series (#84232)
This commit is contained in:
parent
f554bc8224
commit
3a2c7d8a99
@ -11,6 +11,33 @@ describe('Series to rows', () => {
|
|||||||
mockTransformationsRegistry([seriesToRowsTransformer]);
|
mockTransformationsRegistry([seriesToRowsTransformer]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should do transform even with only one series', async () => {
|
||||||
|
const cfg: DataTransformerConfig<SeriesToRowsTransformerOptions> = {
|
||||||
|
id: DataTransformerID.seriesToRows,
|
||||||
|
options: {},
|
||||||
|
};
|
||||||
|
|
||||||
|
const seriesA = toDataFrame({
|
||||||
|
name: 'A',
|
||||||
|
fields: [
|
||||||
|
{ name: 'Time', type: FieldType.time, values: [1000] },
|
||||||
|
{ name: 'Temp', type: FieldType.number, values: [1] },
|
||||||
|
],
|
||||||
|
});
|
||||||
|
|
||||||
|
await expect(transformDataFrame([cfg], [seriesA])).toEmitValuesWith((received) => {
|
||||||
|
const result = received[0];
|
||||||
|
|
||||||
|
const expected: Field[] = [
|
||||||
|
createField('Time', FieldType.time, [1000]),
|
||||||
|
createField('Metric', FieldType.string, ['A']),
|
||||||
|
createField('Value', FieldType.number, [1]),
|
||||||
|
];
|
||||||
|
|
||||||
|
expect(unwrap(result[0].fields)).toEqual(expected);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
it('combine two series into one', async () => {
|
it('combine two series into one', async () => {
|
||||||
const cfg: DataTransformerConfig<SeriesToRowsTransformerOptions> = {
|
const cfg: DataTransformerConfig<SeriesToRowsTransformerOptions> = {
|
||||||
id: DataTransformerID.seriesToRows,
|
id: DataTransformerID.seriesToRows,
|
||||||
|
@ -25,7 +25,7 @@ export const seriesToRowsTransformer: DataTransformerInfo<SeriesToRowsTransforme
|
|||||||
operator: (options) => (source) =>
|
operator: (options) => (source) =>
|
||||||
source.pipe(
|
source.pipe(
|
||||||
map((data) => {
|
map((data) => {
|
||||||
if (!Array.isArray(data) || data.length <= 1) {
|
if (!Array.isArray(data) || data.length === 0) {
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user