Skip to content

Commit

Permalink
Fix flatten bug. Thanks @hughsk
Browse files Browse the repository at this point in the history
  • Loading branch information
kvz committed Feb 17, 2014
1 parent 678999b commit 30390d6
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 21 deletions.
12 changes: 4 additions & 8 deletions lib/rrdtool.js
Expand Up @@ -116,7 +116,7 @@ RRDTool.prototype._default = function(options, defaultOpts) {

RRDTool.prototype.create = function(rrdFile, options, cb) {
var self = this;
options = options || [];
options = options || [];
options.unshift(rrdFile);

options = self._default(options, {
Expand All @@ -129,15 +129,15 @@ RRDTool.prototype.create = function(rrdFile, options, cb) {

RRDTool.prototype.update = function(rrdFile, time, values, options, cb) {
var self = this;
options = options || [];
options = options || [];
options.unshift(rrdFile);
options.push(self.rrdTime(time) + ':' + values.join(':'));
self.exe('update', options, cb);
};

RRDTool.prototype.graph = function (pngFile, options, cb) {
var self = this;
options = options || [];
options = options || [];
options.unshift(pngFile);
self.exe('graph', options, cb);
};
Expand Down Expand Up @@ -184,11 +184,7 @@ RRDTool.prototype.explodeTree = function(buf) {
flat[key] = self.toVal(rawVal);
});

return unflatten(flat, {
delimiter: '.',
safe: true,
object: true,
});
return unflatten(flat);
};

RRDTool.prototype.toVal = function(val) {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Expand Up @@ -12,7 +12,7 @@
"glob": "3.2.8",
"underscore": "1.5.2",
"mkdirp": "0.3.5",
"flat": "1.1.0",
"flat": "1.2.0",
"mocha": "1.17.0",
"cli": "0.4.5",
"lru-cache": "2.5.0",
Expand Down
20 changes: 8 additions & 12 deletions test/test-rrdtool.js
Expand Up @@ -5,9 +5,7 @@ var rrdtool = new RRDTool();
var rrdFilePing = __dirname + '/ping.rrd';
var rrdFileTemp = __dirname + '/temp.rrd';
var rrdFileNonexisting = __dirname + '/nonexisting.rrd';


var buf = 'filename = "/Users/kevin/metriks/rrds/nslookup/kvz-imac-home-4.local-nslookup.rrd"\nrrd_version = "0003"\nstep = 300\nlast_update = 1392592863\nheader_size = 1832\nds[8_8_8_8].index = 0\nds[8_8_8_8].type = "GAUGE"\nds[8_8_8_8].minimal_heartbeat = 600\nds[8_8_8_8].min = NaN\nds[8_8_8_8].max = NaN\nds[8_8_8_8].last_ds = "19"\nds[8_8_8_8].value = 2.0900000000e+02\nds[8_8_8_8].unknown_sec = 52\nds[8_8_4_4].index = 1\nds[8_8_4_4].type = "GAUGE"\nds[8_8_4_4].minimal_heartbeat = 600\nds[8_8_4_4].min = NaN\nds[8_8_4_4].max = NaN\nds[8_8_4_4].last_ds = "20"\nds[8_8_4_4].value = 2.2000000000e+02\nds[8_8_4_4].unknown_sec = 52\nds[4_2_2_2].index = 2\nds[4_2_2_2].type = "GAUGE"\nds[4_2_2_2].minimal_heartbeat = 600\nds[4_2_2_2].min = NaN\nds[4_2_2_2].max = NaN\nds[4_2_2_2].last_ds = "122"\nds[4_2_2_2].value = 1.3420000000e+03\nds[4_2_2_2].unknown_sec = 52\nds[208_67_222_222].index = 3\nds[208_67_222_222].type = "GAUGE"\nds[208_67_222_222].minimal_heartbeat = 600\nds[208_67_222_222].min = NaN\nds[208_67_222_222].max = NaN\nds[208_67_222_222].last_ds = "18"\nds[208_67_222_222].value = 1.9800000000e+02\nds[208_67_222_222].unknown_sec = 52\nds[172_16_0_23].index = 4\nds[172_16_0_23].type = "GAUGE"\nds[172_16_0_23].minimal_heartbeat = 600\nds[172_16_0_23].min = NaN\nds[172_16_0_23].max = NaN\nds[172_16_0_23].last_ds = "-1"\nds[172_16_0_23].value = -1.1000000000e+01\nds[172_16_0_23].unknown_sec = 52\nrra[0].cf = "AVERAGE"\nrra[0].rows = 300\nrra[0].cur_row = 215\nrra[0].pdp_per_row = 1\nrra[0].xff = 5.0000000000e-01\nrra[0].cdp_prep[0].value = NaN\nrra[0].cdp_prep[0].unknown_datapoints = 0\nrra[0].cdp_prep[1].value = NaN\nrra[0].cdp_prep[1].unknown_datapoints = 0\nrra[0].cdp_prep[2].value = NaN\nrra[0].cdp_prep[2].unknown_datapoints = 0\nrra[0].cdp_prep[3].value = NaN\nrra[0].cdp_prep[3].unknown_datapoints = 0\nrra[0].cdp_prep[4].value = NaN\nrra[0].cdp_prep[4].unknown_datapoints = 0\n';
var rrdtoolInfoOutput = 'filename = "/Users/kevin/metriks/rrds/nslookup/kvz-imac-home-4.local-nslookup.rrd"\nrrd_version = "0003"\nstep = 300\nlast_update = 1392592863\nheader_size = 1832\nds[8_8_8_8].index = 0\nds[8_8_8_8].type = "GAUGE"\nds[8_8_8_8].minimal_heartbeat = 600\nds[8_8_8_8].min = NaN\nds[8_8_8_8].max = NaN\nds[8_8_8_8].last_ds = "19"\nds[8_8_8_8].value = 2.0900000000e+02\nds[8_8_8_8].unknown_sec = 52\nds[8_8_4_4].index = 1\nds[8_8_4_4].type = "GAUGE"\nds[8_8_4_4].minimal_heartbeat = 600\nds[8_8_4_4].min = NaN\nds[8_8_4_4].max = NaN\nds[8_8_4_4].last_ds = "20"\nds[8_8_4_4].value = 2.2000000000e+02\nds[8_8_4_4].unknown_sec = 52\nds[4_2_2_2].index = 2\nds[4_2_2_2].type = "GAUGE"\nds[4_2_2_2].minimal_heartbeat = 600\nds[4_2_2_2].min = NaN\nds[4_2_2_2].max = NaN\nds[4_2_2_2].last_ds = "122"\nds[4_2_2_2].value = 1.3420000000e+03\nds[4_2_2_2].unknown_sec = 52\nds[208_67_222_222].index = 3\nds[208_67_222_222].type = "GAUGE"\nds[208_67_222_222].minimal_heartbeat = 600\nds[208_67_222_222].min = NaN\nds[208_67_222_222].max = NaN\nds[208_67_222_222].last_ds = "18"\nds[208_67_222_222].value = 1.9800000000e+02\nds[208_67_222_222].unknown_sec = 52\nds[172_16_0_23].index = 4\nds[172_16_0_23].type = "GAUGE"\nds[172_16_0_23].minimal_heartbeat = 600\nds[172_16_0_23].min = NaN\nds[172_16_0_23].max = NaN\nds[172_16_0_23].last_ds = "-1"\nds[172_16_0_23].value = -1.1000000000e+01\nds[172_16_0_23].unknown_sec = 52\nrra[0].cf = "AVERAGE"\nrra[0].rows = 300\nrra[0].cur_row = 215\nrra[0].pdp_per_row = 1\nrra[0].xff = 5.0000000000e-01\nrra[0].cdp_prep[0].value = NaN\nrra[0].cdp_prep[0].unknown_datapoints = 0\nrra[0].cdp_prep[1].value = NaN\nrra[0].cdp_prep[1].unknown_datapoints = 0\nrra[0].cdp_prep[2].value = NaN\nrra[0].cdp_prep[2].unknown_datapoints = 0\nrra[0].cdp_prep[3].value = NaN\nrra[0].cdp_prep[3].unknown_datapoints = 0\nrra[0].cdp_prep[4].value = NaN\nrra[0].cdp_prep[4].unknown_datapoints = 0\n';

describe('rrdtool', function(){
describe('info', function(){
Expand Down Expand Up @@ -38,13 +36,11 @@ describe('rrdtool', function(){
});
});
});
// @todo Implement after this has been fixed https://github.com/hughsk/flat/issues/6
// describe('explodeTree', function(){
// it('should return exploded Tree', function(done){
// var info = rrdtool.explodeTree(buf);
// console.log({info:info, buf:buf});
// assert.strictEqual(info, null);
// done();
// });
// });
describe('explodeTree', function(){
it('should return exploded Tree', function(done){
var info = rrdtool.explodeTree(rrdtoolInfoOutput);
assert.strictEqual(info.ds['8_8_8_8'].last_ds, "19");
done();
});
});
});

0 comments on commit 30390d6

Please sign in to comment.