UNPKG

@fusioncharts/fusiontime

Version:

FusionCharts JavaScript time-series charting framework

1 lines 10.7 kB
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _atomicity=require("./atomicity");var _datetimeEnums=require("../../../../../fc-utils/src/datetime-enums");var _timeIntervals=require("../../../../../fc-utils/src/time-intervals");var _standardBins=require("../../../../../fc-utils/src/bin-decider/standard-bins");var _binDecider=require("../../../../../fc-utils/src/bin-decider");function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach((function(r){(0,_defineProperty2.default)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var bins=(0,_standardBins.getDefaultBins)(_timeIntervals.timeYear,_timeIntervals.timeMonth,_timeIntervals.timeWeek,_timeIntervals.timeDay,_timeIntervals.timeHour,_timeIntervals.timeMinute,_timeIntervals.timeSecond,_timeIntervals.timeMillisecond),intervalIndexMap=(0,_binDecider._calculateIndexOfIntervals)(bins);describe("atomicity api",(function(){it("should give 1 minute minimum bininng for given sample",(function(){var data=[[1477801691e3,1,"Bread",21.8],[1477802134e3,2,"Scandinavian",27.13],[1477802134e3,2,"Scandinavian",4.15],[1477802277e3,3,"Hot chocolate",24],[1477802277e3,3,"Jam",13.09],[1477802277e3,3,"Cookies",25.77],[1477802321e3,4,"Muffin",19.55],[1477802583e3,5,"Coffee",20.39],[1477802583e3,5,"Pastry",23.32],[1477802583e3,5,"Bread",15.66],[1477802815e3,6,"Medialuna",13.15],[1477802815e3,6,"Pastry",23.55],[1477802815e3,6,"Muffin",1.86],[1477802952e3,7,"Medialuna",30.71],[1477802952e3,7,"Pastry",23.67],[1477802952e3,7,"Coffee",22.66],[1477802952e3,7,"Tea",25.05],[1477803051e3,8,"Pastry",16.19],[1477803051e3,8,"Bread",6.76],[1477803119e3,9,"Bread",18.22],[1477803119e3,9,"Muffin",25.56],[1477803358e3,10,"Scandinavian",22.88],[1477803358e3,10,"Medialuna",21.08],[1477803441e3,11,"Bread",11.47],[1477803441e3,11,"Medialuna",25.97],[1477803441e3,11,"Bread",17.87],[1477803441e3,11,"NONE",19.78],[1477803614e3,12,"Jam",23.77],[1477803614e3,12,"Coffee",13.77],[1477803614e3,12,"Tartine",23.81],[1477803614e3,12,"Pastry",28.88],[1477803614e3,12,"Tea",3.42],[1477803684e3,13,"Basket",7.45],[1477803684e3,13,"Bread",22.78],[1477803684e3,13,"Coffee",21.7],[1477803766e3,14,"Bread",7.71],[1477803766e3,14,"Medialuna",28.8],[1477803766e3,14,"Pastry",13.98],[1477803876e3,15,"NONE",13.11],[1477803876e3,15,"NONE",5.4],[1477803876e3,15,"Mineral water",12.99],[1477803876e3,15,"Scandinavian",15.25],[1477804028e3,16,"Bread",4.78],[1477804028e3,16,"Medialuna",21.04],[1477804028e3,16,"Coffee",9.42],[1477804084e3,17,"Hot chocolate",29.72],[1477804316e3,18,"Farm House",3.53],[1477804388e3,19,"Farm House",24.79],[1477804388e3,19,"Bread",2.48]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d %H:%M:%S")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Minute.ms,2,_datetimeEnums.DatetimeUnits.Minute.ms*2])}));it("should give 1 month minimum bininng for given sample",(function(){var data=[[15150906e5],[15152634e5],[15159546e5],[15163866e5],[15168186e5],[1519065e6],[15219162e5],[15243354e5]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Month.ms,1,_datetimeEnums.DatetimeUnits.Month.ms])}));it("should give 5 days minimum bininng for given sample",(function(){var data=[[15150906e5],[15152634e5],[15159546e5],[15163866e5],[15168186e5],[1519065e6],[15219162e5],[15243354e5],[1524681e6]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Day.ms,5,_datetimeEnums.DatetimeUnits.Day.ms*5])}));it("should give 1 month minimum bininng for given sample",(function(){var data=[[15150906e5],[15152634e5],[15159546e5],[15163866e5],[15168186e5],[1519065e6],[15219162e5],[15243354e5],[1527273e6]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Month.ms,1,_datetimeEnums.DatetimeUnits.Month.ms])}));it("should give 2 days minimum bininng for given sample",(function(){var data=[[15150906e5],[15152634e5],[15159546e5],[15163866e5],[15163866e5],[15165594e5],[15168186e5],[15168186e5]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Day.ms,2,_datetimeEnums.DatetimeUnits.Day.ms*2])}));it("should give 1 month minimum bininng for given sample",(function(){var data=[[15148314e5],[15172506e5],[15174234e5],[15197562e5],[1519929e6],[15223482e5],[15226074e5],[15249402e5],[1525113e6],[15276186e5]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Month.ms,1,_datetimeEnums.DatetimeUnits.Month.ms])}));it("should give 2 days minimum bininng for given sample",(function(){var data=[[15148314e5],[15172506e5],[15174234e5],[15197562e5],[1519929e6],[15224346e5],[15226074e5],[15249402e5],[1525113e6],[1527705e6],[15278778e5]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Day.ms,2,_datetimeEnums.DatetimeUnits.Day.ms*2])}));it("should give 2 year minimum bininng for given sample",(function(){var data=[[12968442e5],[13332186e5],[1372617e6],[14515866e5],[15182874e5]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m-%d")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Year.ms,2,2*_datetimeEnums.DatetimeUnits.Year.ms])}));it("should give 11 years minimum bininng for given sample",(function(){var data=[[3155328e5],[578448e6],[938736e6],[12753504e5]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%Y-%m")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Year.ms,11,_datetimeEnums.DatetimeUnits.Year.ms*11])}));it("should give 1 minute minimum bininng for given sample of online retail",(function(){var data=[[129117216e4],[129117216e4],[129117216e4],[129117216e4],[129117216e4],[129117216e4],[129117216e4],[129117228e4],[129117228e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[129117264e4],[12911727e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911733e5],[12911742e5],[129117426e4],[129117426e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117432e4],[129117474e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117612e4],[129117624e4],[129117624e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117642e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[129117666e4],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[12911769e5],[129117714e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117738e4],[129117756e4],[129117756e4],[129117756e4],[129117756e4],[129117756e4],[129117756e4],[129117756e4],[129117762e4],[129117762e4],[129117762e4],[129117768e4],[129117768e4],[129117768e4],[129117768e4],[129117768e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4],[129117774e4]];expect((0,_atomicity.getAtomicity)(_objectSpread(_objectSpread({},(0,_atomicity.getFormatStore)("%d/%m/%y %H:%M")),{},{index:0,data:data,bins:bins,intervalIndexMap:intervalIndexMap,ms:{count:function count(a,b){return b-a}}}))).toEqual([_datetimeEnums.DatetimeUnits.Minute.ms,1,_datetimeEnums.DatetimeUnits.Minute.ms])}))}));