mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 09:48:58 -04:00
working on tests for Data class
This commit is contained in:
parent
264e29b75f
commit
c82481eed0
6 changed files with 41 additions and 92 deletions
|
@ -36,7 +36,6 @@ define(function (require) {
|
|||
// the y value of the zero-filled array
|
||||
max = obj.series.length;
|
||||
for (i = 0; i < max; i++) {
|
||||
// var zeroArray = createZeroFilledArray(keys, obj);
|
||||
zeroArray = createZeroFilledArray(keys, obj.ordered);
|
||||
dataArray = obj.series[i].values;
|
||||
|
||||
|
|
|
@ -1,16 +1,15 @@
|
|||
define(function (require) {
|
||||
return function OrderedXKeysUtilService(Private) {
|
||||
var _ = require('lodash');
|
||||
var getObjKeys = Private(require('components/vislib/components/_functions/zero_injection/uniq_keys'));
|
||||
var getUniqKeys = Private(require('components/vislib/components/_functions/zero_injection/uniq_keys'));
|
||||
|
||||
// Takes a kibana data objects
|
||||
return function (obj) {
|
||||
var objKeys = getObjKeys(obj);
|
||||
var objKeys = getUniqKeys(obj);
|
||||
|
||||
// Returns an array x axis values
|
||||
return _.chain(objKeys)
|
||||
.pairs()
|
||||
// .sortBy(1)
|
||||
.pluck(0)
|
||||
.value();
|
||||
};
|
||||
|
|
|
@ -85,6 +85,7 @@
|
|||
'specs/vislib/zero_injection',
|
||||
'specs/vislib/labels',
|
||||
'specs/vislib/d3functions',
|
||||
'specs/vislib/data',
|
||||
'specs/utils/diff_time_picker_vals',
|
||||
'specs/factories/events',
|
||||
'specs/index_patterns/_flatten_search_response'
|
||||
|
|
2
test/unit/specs/vislib/d3functions.js
vendored
2
test/unit/specs/vislib/d3functions.js
vendored
|
@ -6,7 +6,7 @@ define(function (require) {
|
|||
|
||||
describe('Vislib d3 Functions Test Suite', function () {
|
||||
|
||||
describe('Test Append Elem Function', function () {
|
||||
describe('Append Elem Function', function () {
|
||||
var appendElem;
|
||||
var fixture;
|
||||
var fixture1;
|
||||
|
|
|
@ -14,6 +14,7 @@ define(function (require) {
|
|||
var rowsArr;
|
||||
var uniqLabels;
|
||||
var error;
|
||||
|
||||
var seriesData = {
|
||||
'label': '',
|
||||
'series': [
|
||||
|
@ -23,6 +24,7 @@ define(function (require) {
|
|||
}
|
||||
]
|
||||
};
|
||||
|
||||
var rowsData = {
|
||||
'rows': [
|
||||
{
|
||||
|
@ -63,6 +65,7 @@ define(function (require) {
|
|||
}
|
||||
]
|
||||
};
|
||||
|
||||
var columnsData = {
|
||||
'columns': [
|
||||
{
|
||||
|
|
|
@ -11,91 +11,40 @@ define(function (require) {
|
|||
angular.module('ZeroFilledArrayUtilService', ['kibana']);
|
||||
|
||||
describe('Vislib Zero Injection Module Test Suite', function () {
|
||||
var data1 = {
|
||||
var seriesData = {
|
||||
series: [
|
||||
{
|
||||
label: '200',
|
||||
values: [
|
||||
{
|
||||
x: 'value1',
|
||||
y: 234
|
||||
},
|
||||
{
|
||||
x: 'value2',
|
||||
y: 34
|
||||
},
|
||||
{
|
||||
x: 'value3',
|
||||
y: 834
|
||||
},
|
||||
{
|
||||
x: 'value4',
|
||||
y: 1234
|
||||
},
|
||||
{
|
||||
x: 'value5',
|
||||
y: 4
|
||||
}
|
||||
{x: 'v1', y: 234}, {x: 'v2', y: 34}, {x: 'v3', y: 834}, {x: 'v4', y: 1234}, {x: 'v5', y: 4}
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
var data2 = {
|
||||
var multiSeriesData = {
|
||||
series: [
|
||||
{
|
||||
label: '200',
|
||||
values: [
|
||||
{
|
||||
x: 1,
|
||||
y: 234
|
||||
},
|
||||
{
|
||||
x: 2,
|
||||
y: 34
|
||||
},
|
||||
{
|
||||
x: 3,
|
||||
y: 834
|
||||
},
|
||||
{
|
||||
x: 4,
|
||||
y: 1234
|
||||
},
|
||||
{
|
||||
x: 5,
|
||||
y: 4
|
||||
}
|
||||
{x: '1', y: 234}, {x: '2', y: 34}, {x: '3', y: 834}, {x: '4', y: 1234}, {x: '5', y: 4}
|
||||
]
|
||||
},
|
||||
{
|
||||
label: '404',
|
||||
values: [
|
||||
{
|
||||
x: 4,
|
||||
y: 1234
|
||||
},
|
||||
{
|
||||
x: 1,
|
||||
y: 234
|
||||
},
|
||||
{
|
||||
x: 2,
|
||||
y: 34
|
||||
}
|
||||
{x: '1', y: 1234}, {x: '3', y: 234}, {x: '5', y: 34}
|
||||
]
|
||||
},
|
||||
{
|
||||
label: '503',
|
||||
values: [
|
||||
{
|
||||
x: 3,
|
||||
y: 834
|
||||
}
|
||||
{x: '3', y: 834}
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
var ordered = {};
|
||||
|
||||
describe('Zero Injection (main)', function () {
|
||||
|
@ -110,8 +59,8 @@ define(function (require) {
|
|||
beforeEach(function () {
|
||||
inject(function (Private) {
|
||||
injectZeros = Private(require('components/vislib/components/_functions/zero_injection/inject_zeros'));
|
||||
sample1 = injectZeros(data1.series, false);
|
||||
sample2 = injectZeros(data2.series, ordered);
|
||||
sample1 = injectZeros(seriesData);
|
||||
sample2 = injectZeros(multiSeriesData);
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -119,40 +68,38 @@ define(function (require) {
|
|||
expect(_.isFunction(injectZeros)).to.be(true);
|
||||
});
|
||||
|
||||
it('should return an array of objects', function () {
|
||||
expect(_.isArray(sample1)).to.be(true);
|
||||
expect(_.isObject(sample1[0])).to.be(true);
|
||||
it('should return an object with series[0].values"', function () {
|
||||
expect(_.isObject(sample1)).to.be(true);
|
||||
expect(_.isObject(sample1.series[0].values)).to.be(true);
|
||||
});
|
||||
|
||||
it('should return the same array of objects when the length of the series array is 1', function () {
|
||||
expect(sample1[0].values[0].x).to.be(data1.series[0].values[0].x);
|
||||
expect(sample1[0].values[1].x).to.be(data1.series[0].values[1].x);
|
||||
expect(sample1[0].values[2].x).to.be(data1.series[0].values[2].x);
|
||||
expect(sample1[0].values[3].x).to.be(data1.series[0].values[3].x);
|
||||
expect(sample1[0].values[4].x).to.be(data1.series[0].values[4].x);
|
||||
expect(sample1.series[0].values[0].x).to.be(seriesData.series[0].values[0].x);
|
||||
expect(sample1.series[0].values[1].x).to.be(seriesData.series[0].values[1].x);
|
||||
expect(sample1.series[0].values[2].x).to.be(seriesData.series[0].values[2].x);
|
||||
expect(sample1.series[0].values[3].x).to.be(seriesData.series[0].values[3].x);
|
||||
expect(sample1.series[0].values[4].x).to.be(seriesData.series[0].values[4].x);
|
||||
});
|
||||
|
||||
it('should inject zeros in the input array', function () {
|
||||
expect(sample2[1].values[2].y).to.be(0);
|
||||
expect(sample2[1].values[4].y).to.be(0);
|
||||
expect(sample2[2].values[0].y).to.be(0);
|
||||
expect(sample2[2].values[1].y).to.be(0);
|
||||
expect(sample2[2].values[3].y).to.be(0);
|
||||
expect(sample2[2].values[4].y).to.be(0);
|
||||
expect(sample2.series[1].values[1].y).to.be(0);
|
||||
expect(sample2.series[2].values[0].y).to.be(0);
|
||||
expect(sample2.series[2].values[1].y).to.be(0);
|
||||
expect(sample2.series[2].values[4].y).to.be(0);
|
||||
});
|
||||
|
||||
it('should return values arrays with the same x values', function () {
|
||||
expect(sample2[1].values[0].x).to.be(sample2[2].values[0].x);
|
||||
expect(sample2[1].values[1].x).to.be(sample2[2].values[1].x);
|
||||
expect(sample2[1].values[2].x).to.be(sample2[2].values[2].x);
|
||||
expect(sample2[1].values[3].x).to.be(sample2[2].values[3].x);
|
||||
expect(sample2[1].values[4].x).to.be(sample2[2].values[4].x);
|
||||
expect(sample2.series[1].values[0].x).to.be(sample2.series[2].values[0].x);
|
||||
expect(sample2.series[1].values[1].x).to.be(sample2.series[2].values[1].x);
|
||||
expect(sample2.series[1].values[2].x).to.be(sample2.series[2].values[2].x);
|
||||
expect(sample2.series[1].values[3].x).to.be(sample2.series[2].values[3].x);
|
||||
expect(sample2.series[1].values[4].x).to.be(sample2.series[2].values[4].x);
|
||||
});
|
||||
|
||||
it('should return values arrays of the same length', function () {
|
||||
expect(sample2[0].values.length).to.be(sample2[1].values.length);
|
||||
expect(sample2[0].values.length).to.be(sample2[2].values.length);
|
||||
expect(sample2[1].values.length).to.be(sample2[2].values.length);
|
||||
expect(sample2.series[0].values.length).to.be(sample2.series[1].values.length);
|
||||
expect(sample2.series[0].values.length).to.be(sample2.series[2].values.length);
|
||||
expect(sample2.series[1].values.length).to.be(sample2.series[2].values.length);
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -167,7 +114,7 @@ define(function (require) {
|
|||
beforeEach(function () {
|
||||
inject(function (Private) {
|
||||
orderXValues = Private(require('components/vislib/components/_functions/zero_injection/ordered_x_keys'));
|
||||
results = orderXValues(data2.series);
|
||||
results = orderXValues(multiSeriesData);
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -199,7 +146,7 @@ define(function (require) {
|
|||
beforeEach(function () {
|
||||
inject(function (Private) {
|
||||
uniqueKeys = Private(require('components/vislib/components/_functions/zero_injection/uniq_keys'));
|
||||
results = uniqueKeys(data2.series);
|
||||
results = uniqueKeys(multiSeriesData.series);
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -262,7 +209,7 @@ define(function (require) {
|
|||
beforeEach(function () {
|
||||
inject(function (Private) {
|
||||
flattenData = Private(require('components/vislib/components/_functions/zero_injection/flatten_data'));
|
||||
results = flattenData(data2.series);
|
||||
results = flattenData(multiSeriesData);
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -345,7 +292,7 @@ define(function (require) {
|
|||
var xValueArr = [1, 2, 3, 4, 5];
|
||||
var createZeroArray;
|
||||
var arr1;
|
||||
var arr2 = data2.series[2].values;
|
||||
var arr2 = multiSeriesData.series[2].values;
|
||||
var results;
|
||||
|
||||
beforeEach(function () {
|
||||
|
@ -379,7 +326,7 @@ define(function (require) {
|
|||
it('should return an array with zeros injected in the appropriate objects as y values', function () {
|
||||
expect(results[0].y).to.be(0);
|
||||
expect(results[1].y).to.be(0);
|
||||
expect(results[3].y).to.be(0);
|
||||
expect(results[2].y).to.be(0);
|
||||
expect(results[4].y).to.be(0);
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue