@cubejs-client/core
Advanced tools
Comparing version 0.13.9 to 0.14.0
@@ -6,2 +6,13 @@ # Change Log | ||
# [0.14.0](https://github.com/cube-js/cube.js/compare/v0.13.12...v0.14.0) (2020-01-16) | ||
### Bug Fixes | ||
* Time dimension can't be selected twice within same query with and without granularity ([aa65129](https://github.com/cube-js/cube.js/commit/aa65129)) | ||
## [0.13.9](https://github.com/cube-js/cube.js/compare/v0.13.8...v0.13.9) (2020-01-03) | ||
@@ -8,0 +19,0 @@ |
@@ -188,16 +188,30 @@ import _objectSpread from '@babel/runtime/helpers/objectSpread'; | ||
}); | ||
var dimensions = query.dimensions || []; | ||
pivotConfig = pivotConfig || (timeDimensions.length ? { | ||
x: timeDimensions.map(function (td) { | ||
return td.dimension; | ||
return ResultSet.timeDimensionMember(td); | ||
}), | ||
y: query.dimensions || [] | ||
y: dimensions | ||
} : { | ||
x: query.dimensions || [], | ||
x: dimensions, | ||
y: [] | ||
}); | ||
pivotConfig.x = pivotConfig.x || []; | ||
pivotConfig.y = pivotConfig.y || []; | ||
var substituteTimeDimensionMembers = function substituteTimeDimensionMembers(axis) { | ||
return axis.map(function (subDim) { | ||
return timeDimensions.find(function (td) { | ||
return td.dimension === subDim; | ||
}) && !dimensions.find(function (d) { | ||
return d === subDim; | ||
}) ? ResultSet.timeDimensionMember(query.timeDimensions.find(function (td) { | ||
return td.dimension === subDim; | ||
})) : subDim; | ||
}); | ||
}; | ||
pivotConfig.x = substituteTimeDimensionMembers(pivotConfig.x || []); | ||
pivotConfig.y = substituteTimeDimensionMembers(pivotConfig.y || []); | ||
var allIncludedDimensions = pivotConfig.x.concat(pivotConfig.y); | ||
var allDimensions = timeDimensions.map(function (td) { | ||
return td.dimension; | ||
return ResultSet.timeDimensionMember(td); | ||
}).concat(query.dimensions); | ||
@@ -240,3 +254,3 @@ pivotConfig.x = pivotConfig.x.concat(allDimensions.filter(function (d) { | ||
var dates = pipe(map(function (row) { | ||
return row[timeDimension.dimension] && moment(row[timeDimension.dimension]); | ||
return row[ResultSet.timeDimensionMember(timeDimension)] && moment(row[ResultSet.timeDimensionMember(timeDimension)]); | ||
}), filter(function (r) { | ||
@@ -285,3 +299,3 @@ return !!r; | ||
}).map(function (td) { | ||
return td.dimension; | ||
return ResultSet.timeDimensionMember(td); | ||
}))) { | ||
@@ -456,3 +470,3 @@ var series = this.timeSeries(this.loadResponse.query.timeDimensions[0]); | ||
value: function tablePivot(pivotConfig) { | ||
var normalizedPivotConfig = this.normalizePivotConfig(pivotConfig); | ||
var normalizedPivotConfig = this.normalizePivotConfig(pivotConfig || {}); | ||
@@ -591,2 +605,7 @@ var valueToObject = function valueToObject(valuesArray, measureValue) { | ||
}], [{ | ||
key: "timeDimensionMember", | ||
value: function timeDimensionMember(td) { | ||
return "".concat(td.dimension, ".").concat(td.granularity); | ||
} | ||
}, { | ||
key: "measureFromAxis", | ||
@@ -593,0 +612,0 @@ value: function measureFromAxis(axisValues) { |
@@ -194,16 +194,30 @@ 'use strict'; | ||
}); | ||
var dimensions = query.dimensions || []; | ||
pivotConfig = pivotConfig || (timeDimensions.length ? { | ||
x: timeDimensions.map(function (td) { | ||
return td.dimension; | ||
return ResultSet.timeDimensionMember(td); | ||
}), | ||
y: query.dimensions || [] | ||
y: dimensions | ||
} : { | ||
x: query.dimensions || [], | ||
x: dimensions, | ||
y: [] | ||
}); | ||
pivotConfig.x = pivotConfig.x || []; | ||
pivotConfig.y = pivotConfig.y || []; | ||
var substituteTimeDimensionMembers = function substituteTimeDimensionMembers(axis) { | ||
return axis.map(function (subDim) { | ||
return timeDimensions.find(function (td) { | ||
return td.dimension === subDim; | ||
}) && !dimensions.find(function (d) { | ||
return d === subDim; | ||
}) ? ResultSet.timeDimensionMember(query.timeDimensions.find(function (td) { | ||
return td.dimension === subDim; | ||
})) : subDim; | ||
}); | ||
}; | ||
pivotConfig.x = substituteTimeDimensionMembers(pivotConfig.x || []); | ||
pivotConfig.y = substituteTimeDimensionMembers(pivotConfig.y || []); | ||
var allIncludedDimensions = pivotConfig.x.concat(pivotConfig.y); | ||
var allDimensions = timeDimensions.map(function (td) { | ||
return td.dimension; | ||
return ResultSet.timeDimensionMember(td); | ||
}).concat(query.dimensions); | ||
@@ -246,3 +260,3 @@ pivotConfig.x = pivotConfig.x.concat(allDimensions.filter(function (d) { | ||
var dates = ramda.pipe(ramda.map(function (row) { | ||
return row[timeDimension.dimension] && moment(row[timeDimension.dimension]); | ||
return row[ResultSet.timeDimensionMember(timeDimension)] && moment(row[ResultSet.timeDimensionMember(timeDimension)]); | ||
}), ramda.filter(function (r) { | ||
@@ -291,3 +305,3 @@ return !!r; | ||
}).map(function (td) { | ||
return td.dimension; | ||
return ResultSet.timeDimensionMember(td); | ||
}))) { | ||
@@ -462,3 +476,3 @@ var series = this.timeSeries(this.loadResponse.query.timeDimensions[0]); | ||
value: function tablePivot(pivotConfig) { | ||
var normalizedPivotConfig = this.normalizePivotConfig(pivotConfig); | ||
var normalizedPivotConfig = this.normalizePivotConfig(pivotConfig || {}); | ||
@@ -597,2 +611,7 @@ var valueToObject = function valueToObject(valuesArray, measureValue) { | ||
}], [{ | ||
key: "timeDimensionMember", | ||
value: function timeDimensionMember(td) { | ||
return "".concat(td.dimension, ".").concat(td.granularity); | ||
} | ||
}, { | ||
key: "measureFromAxis", | ||
@@ -599,0 +618,0 @@ value: function measureFromAxis(axisValues) { |
{ | ||
"name": "@cubejs-client/core", | ||
"version": "0.13.9", | ||
"version": "0.14.0", | ||
"repository": { | ||
@@ -36,3 +36,3 @@ "type": "git", | ||
}, | ||
"gitHead": "7a7a3d206d8e18a64e53716fb46d6ef9f5677313" | ||
"gitHead": "d40bf2a4f174f5ef79726c2d9bf18cc1233959f0" | ||
} |
@@ -102,16 +102,32 @@ /** | ||
static timeDimensionMember(td) { | ||
return `${td.dimension}.${td.granularity}`; | ||
} | ||
normalizePivotConfig(pivotConfig) { | ||
const { query } = this.loadResponse; | ||
const timeDimensions = (query.timeDimensions || []).filter(td => !!td.granularity); | ||
const dimensions = query.dimensions || []; | ||
pivotConfig = pivotConfig || (timeDimensions.length ? { | ||
x: timeDimensions.map(td => td.dimension), | ||
y: query.dimensions || [] | ||
x: timeDimensions.map(td => ResultSet.timeDimensionMember(td)), | ||
y: dimensions | ||
} : { | ||
x: query.dimensions || [], | ||
x: dimensions, | ||
y: [] | ||
}); | ||
pivotConfig.x = pivotConfig.x || []; | ||
pivotConfig.y = pivotConfig.y || []; | ||
const substituteTimeDimensionMembers = axis => axis.map( | ||
subDim => ( | ||
timeDimensions.find(td => td.dimension === subDim) && | ||
!dimensions.find(d => d === subDim) ? | ||
ResultSet.timeDimensionMember(query.timeDimensions.find(td => td.dimension === subDim)) : | ||
subDim | ||
) | ||
); | ||
pivotConfig.x = substituteTimeDimensionMembers(pivotConfig.x || []); | ||
pivotConfig.y = substituteTimeDimensionMembers(pivotConfig.y || []); | ||
const allIncludedDimensions = pivotConfig.x.concat(pivotConfig.y); | ||
const allDimensions = timeDimensions.map(td => td.dimension).concat(query.dimensions); | ||
const allDimensions = timeDimensions.map(td => ResultSet.timeDimensionMember(td)).concat(query.dimensions); | ||
pivotConfig.x = pivotConfig.x.concat(allDimensions.filter(d => allIncludedDimensions.indexOf(d) === -1)); | ||
@@ -142,3 +158,6 @@ if (!pivotConfig.x.concat(pivotConfig.y).find(d => d === 'measures')) { | ||
const dates = pipe( | ||
map(row => row[timeDimension.dimension] && moment(row[timeDimension.dimension])), | ||
map( | ||
row => row[ResultSet.timeDimensionMember(timeDimension)] && | ||
moment(row[ResultSet.timeDimensionMember(timeDimension)]) | ||
), | ||
filter(r => !!r) | ||
@@ -177,3 +196,5 @@ )(this.loadResponse.data); | ||
pivotConfig.x, | ||
(this.loadResponse.query.timeDimensions || []).filter(td => !!td.granularity).map(td => td.dimension) | ||
(this.loadResponse.query.timeDimensions || []) | ||
.filter(td => !!td.granularity) | ||
.map(td => ResultSet.timeDimensionMember(td)) | ||
) | ||
@@ -305,3 +326,3 @@ ) { | ||
tablePivot(pivotConfig) { | ||
const normalizedPivotConfig = this.normalizePivotConfig(pivotConfig); | ||
const normalizedPivotConfig = this.normalizePivotConfig(pivotConfig || {}); | ||
const valueToObject = | ||
@@ -308,0 +329,0 @@ (valuesArray, measureValue) => ( |
@@ -0,1 +1,2 @@ | ||
/* eslint-disable quote-props */ | ||
/* globals jest,describe,test,expect */ | ||
@@ -89,3 +90,3 @@ import ResultSet from './ResultSet'; | ||
expect(resultSet.normalizePivotConfig({ y: ['Foo.bar'] })).toEqual({ | ||
x: ['Foo.createdAt'], | ||
x: ['Foo.createdAt.day'], | ||
y: ['Foo.bar'], | ||
@@ -95,3 +96,429 @@ fillMissingDates: true | ||
}); | ||
test('time dimensions with granularity passed without', () => { | ||
const resultSet = new ResultSet({ | ||
query: { | ||
dimensions: ['Foo.bar'], | ||
timeDimensions: [{ | ||
granularity: 'day', | ||
dimension: 'Foo.createdAt' | ||
}] | ||
} | ||
}); | ||
expect(resultSet.normalizePivotConfig({ x: ['Foo.createdAt'], y: ['Foo.bar'] })).toEqual({ | ||
x: ['Foo.createdAt.day'], | ||
y: ['Foo.bar'], | ||
fillMissingDates: true | ||
}); | ||
}); | ||
test('double time dimensions without granularity', () => { | ||
const resultSet = new ResultSet({ | ||
"query": { | ||
"measures": [], | ||
"timeDimensions": [{ | ||
"dimension": "Orders.createdAt", | ||
"dateRange": ["2020-01-08T00:00:00.000", "2020-01-14T23:59:59.999"] | ||
}], | ||
"dimensions": ["Orders.createdAt"], | ||
"filters": [], | ||
"timezone": "UTC" | ||
}, | ||
}); | ||
expect(resultSet.normalizePivotConfig(resultSet.normalizePivotConfig({}))).toEqual({ | ||
x: ['Orders.createdAt'], | ||
y: [], | ||
fillMissingDates: true | ||
}); | ||
}); | ||
test('double time dimensions with granularity', () => { | ||
const resultSet = new ResultSet({ | ||
"query": { | ||
"measures": [], | ||
"timeDimensions": [{ | ||
"dimension": "Orders.createdAt", | ||
"granularity": "day", | ||
"dateRange": ["2020-01-08T00:00:00.000", "2020-01-14T23:59:59.999"] | ||
}], | ||
"dimensions": ["Orders.createdAt"], | ||
"filters": [], | ||
"timezone": "UTC" | ||
}, | ||
}); | ||
expect(resultSet.normalizePivotConfig(resultSet.normalizePivotConfig({}))).toEqual({ | ||
x: ['Orders.createdAt.day', "Orders.createdAt"], | ||
y: [], | ||
fillMissingDates: true | ||
}); | ||
}); | ||
}); | ||
describe('pivot', () => { | ||
test('same dimension and time dimension', () => { | ||
const resultSet = new ResultSet({ | ||
"query": { | ||
"measures": [], | ||
"timeDimensions": [{ | ||
"dimension": "Orders.createdAt", | ||
"granularity": "day", | ||
"dateRange": ["2020-01-08T00:00:00.000", "2020-01-14T23:59:59.999"] | ||
}], | ||
"dimensions": ["Orders.createdAt"], | ||
"filters": [], | ||
"timezone": "UTC" | ||
}, | ||
"data": [{ | ||
"Orders.createdAt": "2020-01-08T17:04:43.000", | ||
"Orders.createdAt.day": "2020-01-08T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-08T19:28:26.000", | ||
"Orders.createdAt.day": "2020-01-08T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T00:13:01.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T00:25:32.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T00:43:11.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T03:04:00.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T04:30:10.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T10:25:04.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T19:47:19.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T19:48:04.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T21:46:24.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-09T23:49:37.000", | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-10T09:07:20.000", | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-10T13:50:05.000", | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-10T15:30:32.000", | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-10T15:32:52.000", | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-10T18:55:23.000", | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-11T01:13:17.000", | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-11T09:17:40.000", | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-11T13:23:03.000", | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-11T17:28:42.000", | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-11T22:34:32.000", | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-11T23:03:58.000", | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-12T03:46:25.000", | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-12T09:57:10.000", | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-12T12:28:22.000", | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-12T14:34:20.000", | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-12T18:45:15.000", | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-12T19:38:05.000", | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-12T21:43:51.000", | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-13T01:42:49.000", | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-13T03:19:22.000", | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-13T05:20:50.000", | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-13T05:46:35.000", | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-13T11:24:01.000", | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-13T12:13:42.000", | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-13T20:21:59.000", | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000" | ||
}, { | ||
"Orders.createdAt": "2020-01-14T20:16:23.000", | ||
"Orders.createdAt.day": "2020-01-14T00:00:00.000" | ||
}], | ||
"annotation": { | ||
"measures": {}, | ||
"dimensions": { | ||
"Orders.createdAt": { | ||
"title": "Orders Created at", | ||
"shortTitle": "Created at", | ||
"type": "time" | ||
} | ||
}, | ||
"segments": {}, | ||
"timeDimensions": { | ||
"Orders.createdAt.day": { | ||
"title": "Orders Created at", | ||
"shortTitle": "Created at", | ||
"type": "time" | ||
} | ||
} | ||
} | ||
}); | ||
expect(resultSet.tablePivot()).toEqual([ | ||
{ | ||
"Orders.createdAt.day": "2020-01-08T00:00:00.000", | ||
"Orders.createdAt": "2020-01-08T17:04:43.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-08T00:00:00.000", | ||
"Orders.createdAt": "2020-01-08T19:28:26.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T00:13:01.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T00:25:32.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T00:43:11.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T03:04:00.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T04:30:10.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T10:25:04.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T19:47:19.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T19:48:04.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T21:46:24.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-09T00:00:00.000", | ||
"Orders.createdAt": "2020-01-09T23:49:37.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000", | ||
"Orders.createdAt": "2020-01-10T09:07:20.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000", | ||
"Orders.createdAt": "2020-01-10T13:50:05.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000", | ||
"Orders.createdAt": "2020-01-10T15:30:32.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000", | ||
"Orders.createdAt": "2020-01-10T15:32:52.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-10T00:00:00.000", | ||
"Orders.createdAt": "2020-01-10T18:55:23.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000", | ||
"Orders.createdAt": "2020-01-11T01:13:17.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000", | ||
"Orders.createdAt": "2020-01-11T09:17:40.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000", | ||
"Orders.createdAt": "2020-01-11T13:23:03.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000", | ||
"Orders.createdAt": "2020-01-11T17:28:42.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000", | ||
"Orders.createdAt": "2020-01-11T22:34:32.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-11T00:00:00.000", | ||
"Orders.createdAt": "2020-01-11T23:03:58.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000", | ||
"Orders.createdAt": "2020-01-12T03:46:25.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000", | ||
"Orders.createdAt": "2020-01-12T09:57:10.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000", | ||
"Orders.createdAt": "2020-01-12T12:28:22.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000", | ||
"Orders.createdAt": "2020-01-12T14:34:20.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000", | ||
"Orders.createdAt": "2020-01-12T18:45:15.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000", | ||
"Orders.createdAt": "2020-01-12T19:38:05.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-12T00:00:00.000", | ||
"Orders.createdAt": "2020-01-12T21:43:51.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000", | ||
"Orders.createdAt": "2020-01-13T01:42:49.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000", | ||
"Orders.createdAt": "2020-01-13T03:19:22.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000", | ||
"Orders.createdAt": "2020-01-13T05:20:50.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000", | ||
"Orders.createdAt": "2020-01-13T05:46:35.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000", | ||
"Orders.createdAt": "2020-01-13T11:24:01.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000", | ||
"Orders.createdAt": "2020-01-13T12:13:42.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-13T00:00:00.000", | ||
"Orders.createdAt": "2020-01-13T20:21:59.000" | ||
}, | ||
{ | ||
"Orders.createdAt.day": "2020-01-14T00:00:00.000", | ||
"Orders.createdAt": "2020-01-14T20:16:23.000" | ||
}]); | ||
}); | ||
test('same dimension and time dimension without granularity', () => { | ||
const resultSet = new ResultSet({ | ||
"query": { | ||
"measures": [], | ||
"timeDimensions": [{ | ||
"dimension": "Orders.createdAt", | ||
"dateRange": ["2020-01-08T00:00:00.000", "2020-01-14T23:59:59.999"] | ||
}], | ||
"dimensions": ["Orders.createdAt"], | ||
"filters": [], | ||
"timezone": "UTC" | ||
}, | ||
"data": [ | ||
{ "Orders.createdAt": "2020-01-08T17:04:43.000" }, | ||
{ "Orders.createdAt": "2020-01-08T19:28:26.000" }, | ||
{ "Orders.createdAt": "2020-01-09T00:13:01.000" }, | ||
{ "Orders.createdAt": "2020-01-09T00:25:32.000" }, | ||
{ "Orders.createdAt": "2020-01-09T00:43:11.000" }, | ||
{ "Orders.createdAt": "2020-01-09T03:04:00.000" }, | ||
{ "Orders.createdAt": "2020-01-09T04:30:10.000" }, | ||
{ "Orders.createdAt": "2020-01-09T10:25:04.000" }, | ||
{ "Orders.createdAt": "2020-01-09T19:47:19.000" }, | ||
{ "Orders.createdAt": "2020-01-09T19:48:04.000" }, | ||
{ "Orders.createdAt": "2020-01-09T21:46:24.000" }, | ||
{ "Orders.createdAt": "2020-01-09T23:49:37.000" }, | ||
{ "Orders.createdAt": "2020-01-10T09:07:20.000" }, | ||
{ "Orders.createdAt": "2020-01-10T13:50:05.000" } | ||
], | ||
"annotation": { | ||
"measures": {}, | ||
"dimensions": { | ||
"Orders.createdAt": { | ||
"title": "Orders Created at", | ||
"shortTitle": "Created at", | ||
"type": "time" | ||
} | ||
}, | ||
"segments": {}, | ||
"timeDimensions": {} | ||
} | ||
}); | ||
expect(resultSet.tablePivot()).toEqual([ | ||
{ "Orders.createdAt": "2020-01-08T17:04:43.000" }, | ||
{ "Orders.createdAt": "2020-01-08T19:28:26.000" }, | ||
{ "Orders.createdAt": "2020-01-09T00:13:01.000" }, | ||
{ "Orders.createdAt": "2020-01-09T00:25:32.000" }, | ||
{ "Orders.createdAt": "2020-01-09T00:43:11.000" }, | ||
{ "Orders.createdAt": "2020-01-09T03:04:00.000" }, | ||
{ "Orders.createdAt": "2020-01-09T04:30:10.000" }, | ||
{ "Orders.createdAt": "2020-01-09T10:25:04.000" }, | ||
{ "Orders.createdAt": "2020-01-09T19:47:19.000" }, | ||
{ "Orders.createdAt": "2020-01-09T19:48:04.000" }, | ||
{ "Orders.createdAt": "2020-01-09T21:46:24.000" }, | ||
{ "Orders.createdAt": "2020-01-09T23:49:37.000" }, | ||
{ "Orders.createdAt": "2020-01-10T09:07:20.000" }, | ||
{ "Orders.createdAt": "2020-01-10T13:50:05.000" } | ||
]); | ||
}); | ||
}); | ||
}); |
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
636918
17300