@ -1,5 +1,12 @@
import { toSeriesData , guessFieldTypes , guessFieldTypeFromValue } from './processSeriesData' ;
import { FieldType } from '../types/data' ;
import {
isSeriesData ,
toLegacyResponseData ,
isTableData ,
toSeriesData ,
guessFieldTypes ,
guessFieldTypeFromValue ,
} from './processSeriesData' ;
import { FieldType , TimeSeries } from '../types/data' ;
import moment from 'moment' ;
describe ( 'toSeriesData' , ( ) = > {
@ -63,3 +70,33 @@ describe('toSeriesData', () => {
expect ( norm . fields [ 3 ] . type ) . toBe ( FieldType . time ) ; // based on name
} ) ;
} ) ;
describe ( 'SerisData backwards compatibility' , ( ) = > {
it ( 'converts TimeSeries to series and back again' , ( ) = > {
const timeseries = {
target : 'Field Name' ,
datapoints : [ [ 100 , 1 ] , [ 200 , 2 ] ] ,
} ;
const series = toSeriesData ( timeseries ) ;
expect ( isSeriesData ( timeseries ) ) . toBeFalsy ( ) ;
expect ( isSeriesData ( series ) ) . toBeTruthy ( ) ;
const roundtrip = toLegacyResponseData ( series ) as TimeSeries ;
expect ( isSeriesData ( roundtrip ) ) . toBeFalsy ( ) ;
expect ( roundtrip . target ) . toBe ( timeseries . target ) ;
} ) ;
it ( 'converts TableData to series and back again' , ( ) = > {
const table = {
columns : [ { text : 'a' , unit : 'ms' } , { text : 'b' , unit : 'zz' } , { text : 'c' , unit : 'yy' } ] ,
rows : [ [ 100 , 1 , 'a' ] , [ 200 , 2 , 'a' ] ] ,
} ;
const series = toSeriesData ( table ) ;
expect ( isTableData ( table ) ) . toBeTruthy ( ) ;
expect ( isSeriesData ( series ) ) . toBeTruthy ( ) ;
const roundtrip = toLegacyResponseData ( series ) as TimeSeries ;
expect ( isTableData ( roundtrip ) ) . toBeTruthy ( ) ;
expect ( roundtrip ) . toMatchObject ( table ) ;
} ) ;
} ) ;