|
@@ -1,6 +1,7 @@
|
|
|
import {describe, beforeEach, it, sinon, expect} from 'test/lib/common';
|
|
import {describe, beforeEach, it, sinon, expect} from 'test/lib/common';
|
|
|
|
|
|
|
|
import {TableModel} from '../table_model';
|
|
import {TableModel} from '../table_model';
|
|
|
|
|
+import {transformers} from '../transformers';
|
|
|
|
|
|
|
|
describe('when transforming time series table', () => {
|
|
describe('when transforming time series table', () => {
|
|
|
var table;
|
|
var table;
|
|
@@ -100,7 +101,11 @@ describe('when transforming time series table', () => {
|
|
|
describe('JSON Data', () => {
|
|
describe('JSON Data', () => {
|
|
|
var panel = {
|
|
var panel = {
|
|
|
transform: 'json',
|
|
transform: 'json',
|
|
|
- columns: [{text: 'Timestamp', value: 'timestamp'}, {text: 'Message', value: 'message'}]
|
|
|
|
|
|
|
+ columns: [
|
|
|
|
|
+ {text: 'Timestamp', value: 'timestamp'},
|
|
|
|
|
+ {text: 'Message', value: 'message'},
|
|
|
|
|
+ {text: 'nested.level2', value: 'nested.level2'},
|
|
|
|
|
+ ]
|
|
|
};
|
|
};
|
|
|
var rawData = [
|
|
var rawData = [
|
|
|
{
|
|
{
|
|
@@ -108,26 +113,42 @@ describe('when transforming time series table', () => {
|
|
|
datapoints: [
|
|
datapoints: [
|
|
|
{
|
|
{
|
|
|
timestamp: 'time',
|
|
timestamp: 'time',
|
|
|
- message: 'message'
|
|
|
|
|
|
|
+ message: 'message',
|
|
|
|
|
+ nested: {
|
|
|
|
|
+ level2: 'level2-value'
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
]
|
|
]
|
|
|
}
|
|
}
|
|
|
];
|
|
];
|
|
|
|
|
|
|
|
- beforeEach(() => {
|
|
|
|
|
- table = TableModel.transform(rawData, panel);
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
- it ('should return 2 columns', () => {
|
|
|
|
|
- expect(table.columns.length).to.be(2);
|
|
|
|
|
- expect(table.columns[0].text).to.be('Timestamp');
|
|
|
|
|
- expect(table.columns[1].text).to.be('Message');
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
- it ('should return 2 rows', () => {
|
|
|
|
|
- expect(table.rows.length).to.be(1);
|
|
|
|
|
- expect(table.rows[0][0]).to.be('time');
|
|
|
|
|
- expect(table.rows[0][1]).to.be('message');
|
|
|
|
|
|
|
+ describe('getColumns', function() {
|
|
|
|
|
+ it('should return nested properties', function() {
|
|
|
|
|
+ var columns = transformers['json'].getColumns(rawData);
|
|
|
|
|
+ expect(columns[0].text).to.be('timestamp');
|
|
|
|
|
+ expect(columns[1].text).to.be('message');
|
|
|
|
|
+ expect(columns[2].text).to.be('nested.level2');
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ describe('transform', function() {
|
|
|
|
|
+ beforeEach(() => {
|
|
|
|
|
+ table = TableModel.transform(rawData, panel);
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ it ('should return 2 columns', () => {
|
|
|
|
|
+ expect(table.columns.length).to.be(3);
|
|
|
|
|
+ expect(table.columns[0].text).to.be('Timestamp');
|
|
|
|
|
+ expect(table.columns[1].text).to.be('Message');
|
|
|
|
|
+ expect(table.columns[2].text).to.be('nested.level2');
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ it ('should return 2 rows', () => {
|
|
|
|
|
+ expect(table.rows.length).to.be(1);
|
|
|
|
|
+ expect(table.rows[0][0]).to.be('time');
|
|
|
|
|
+ expect(table.rows[0][1]).to.be('message');
|
|
|
|
|
+ expect(table.rows[0][2]).to.be('level2-value');
|
|
|
|
|
+ });
|
|
|
});
|
|
});
|
|
|
});
|
|
});
|
|
|
|
|
|