ExtractFields: properly detect value types from extracted fields (#41995) (#42001)

(cherry picked from commit 82cf49143d)

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
This commit is contained in:
Grot (@grafanabot)
2021-11-19 13:10:23 -05:00
committed by GitHub
parent 3d4a5ce8fa
commit a9da6b8175
4 changed files with 61 additions and 35 deletions
@@ -11,6 +11,7 @@ import { DataFrameDTO, FieldType, TableData, TimeSeries } from '../types/index';
import { dateTime } from '../datetime/moment_wrapper';
import { MutableDataFrame } from './MutableDataFrame';
import { ArrayDataFrame } from './ArrayDataFrame';
import { getFieldTypeFromValue } from '.';
describe('toDataFrame', () => {
it('converts timeseries to series', () => {
@@ -118,15 +119,13 @@ describe('toDataFrame', () => {
expect(guessFieldTypeFromValue('xxxx')).toBe(FieldType.string);
});
it('Guess Column Types from strings', () => {
expect(guessFieldTypeFromValue('1')).toBe(FieldType.number);
expect(guessFieldTypeFromValue('1.234')).toBe(FieldType.number);
expect(guessFieldTypeFromValue('NaN')).toBe(FieldType.number);
expect(guessFieldTypeFromValue('3.125e7')).toBe(FieldType.number);
expect(guessFieldTypeFromValue('True')).toBe(FieldType.boolean);
expect(guessFieldTypeFromValue('FALSE')).toBe(FieldType.boolean);
expect(guessFieldTypeFromValue('true')).toBe(FieldType.boolean);
expect(guessFieldTypeFromValue('xxxx')).toBe(FieldType.string);
it('Get column types from values', () => {
expect(getFieldTypeFromValue(1)).toBe(FieldType.number);
expect(getFieldTypeFromValue(1.234)).toBe(FieldType.number);
expect(getFieldTypeFromValue(NaN)).toBe(FieldType.number);
expect(getFieldTypeFromValue(3.125e7)).toBe(FieldType.number);
expect(getFieldTypeFromValue(true)).toBe(FieldType.boolean);
expect(getFieldTypeFromValue('xxxx')).toBe(FieldType.string);
});
it('Guess Column Types from series', () => {