forked from nightscout/cgm-remote-monitor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathddata.test.js
73 lines (61 loc) · 1.76 KB
/
ddata.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
'use strict';
var should = require('should');
describe('ddata', function ( ) {
// var sandbox = require('../lib/sandbox')();
// var env = require('../env')();
var ctx = {};
ctx.ddata = require('../lib/data/ddata')();
it('should be a module', function (done) {
var libddata = require('../lib/data/ddata');
var ddata = libddata( );
should.exist(ddata);
should.exist(libddata);
should.exist(libddata.call);
ddata = ctx.ddata.clone( );
should.exist(ddata);
done( );
});
it('has #clone( )', function (done) {
should.exist(ctx.ddata.treatments);
should.exist(ctx.ddata.sgvs);
should.exist(ctx.ddata.mbgs);
should.exist(ctx.ddata.cals);
should.exist(ctx.ddata.profiles);
should.exist(ctx.ddata.devicestatus);
should.exist(ctx.ddata.lastUpdated);
var ddata = ctx.ddata.clone( );
should.exist(ddata);
should.exist(ddata.treatments);
should.exist(ddata.sgvs);
should.exist(ddata.mbgs);
should.exist(ddata.cals);
should.exist(ddata.profiles);
should.exist(ddata.devicestatus);
should.exist(ddata.lastUpdated);
done( );
});
it('has #split( )', function (done) {
var date = new Date( );
var time = date.getTime( );
var cutoff = 1000 * 60 * 5;
var max = 1000 * 60 * 60 * 24 * 2;
var pieces = ctx.ddata.splitRecent(time, cutoff, max);
should.exist(pieces);
should.exist(pieces.first);
should.exist(pieces.rest);
done( );
});
// TODO: ensure partition function gets called via:
// Properties
// * ddata.devicestatus
// * ddata.mbgs
// * ddata.sgvs
// * ddata.treatments
// * ddata.profiles
// * ddata.lastUpdated
// Methods
// * ddata.processTreatments
// * ddata.processDurations
// * ddata.clone
// * ddata.split
});