mirror of https://github.com/masayuki0812/c3.git
Masayuki Tanaka
8 years ago
committed by
GitHub
8 changed files with 181 additions and 26 deletions
@ -0,0 +1,15 @@ |
|||||||
|
import babel from 'rollup-plugin-babel'; |
||||||
|
|
||||||
|
export default { |
||||||
|
entry: 'src/index.js', |
||||||
|
format: 'umd', |
||||||
|
moduleName: 'c3', |
||||||
|
plugins: [babel({ |
||||||
|
presets: [['es2015', { |
||||||
|
modules: false |
||||||
|
}]], |
||||||
|
plugins: [ |
||||||
|
'external-helpers' |
||||||
|
] |
||||||
|
})] |
||||||
|
}; |
@ -0,0 +1,97 @@ |
|||||||
|
import c3 from '../src'; |
||||||
|
|
||||||
|
const $$ = c3.chart.internal.fn; |
||||||
|
|
||||||
|
describe('$$.convertColumnsToData', () => { |
||||||
|
it('converts column data to normalized data', () => { |
||||||
|
const data = $$.convertColumnsToData([ |
||||||
|
["cat1", "a", "b", "c", "d"], |
||||||
|
["data1", 30, 200, 100, 400], |
||||||
|
["cat2", "b", "a", "c", "d", "e", "f"], |
||||||
|
["data2", 400, 60, 200, 800, 10, 10] |
||||||
|
]); |
||||||
|
|
||||||
|
expect(data).toEqual([{ |
||||||
|
cat1: 'a', |
||||||
|
data1: 30, |
||||||
|
cat2: 'b', |
||||||
|
data2: 400 |
||||||
|
}, { |
||||||
|
cat1: 'b', |
||||||
|
data1: 200, |
||||||
|
cat2: 'a', |
||||||
|
data2: 60 |
||||||
|
}, { |
||||||
|
cat1: 'c', |
||||||
|
data1: 100, |
||||||
|
cat2: 'c', |
||||||
|
data2: 200 |
||||||
|
}, { |
||||||
|
cat1: 'd', |
||||||
|
data1: 400, |
||||||
|
cat2: 'd', |
||||||
|
data2: 800 |
||||||
|
}, { |
||||||
|
cat2: 'e', |
||||||
|
data2: 10 |
||||||
|
}, { |
||||||
|
cat2: 'f', |
||||||
|
data2: 10 |
||||||
|
}]); |
||||||
|
}); |
||||||
|
|
||||||
|
it('throws when the column data contains undefined', () => { |
||||||
|
expect(() => $$.convertColumnsToData([ |
||||||
|
["cat1", "a", "b", "c", "d"], |
||||||
|
["data1", undefined] |
||||||
|
])).toThrowError(Error, /Source data is missing a component/); |
||||||
|
}); |
||||||
|
}); |
||||||
|
|
||||||
|
describe('$$.convertRowsToData', () => { |
||||||
|
it('converts the row data to normalized data', () => { |
||||||
|
const data = $$.convertRowsToData([ |
||||||
|
['data1', 'data2', 'data3'], |
||||||
|
[90, 120, 300], |
||||||
|
[40, 160, 240], |
||||||
|
[50, 200, 290], |
||||||
|
[120, 160, 230], |
||||||
|
[80, 130, 300], |
||||||
|
[90, 220, 320] |
||||||
|
]); |
||||||
|
|
||||||
|
expect(data).toEqual([{ |
||||||
|
data1: 90, |
||||||
|
data2: 120, |
||||||
|
data3: 300 |
||||||
|
}, { |
||||||
|
data1: 40, |
||||||
|
data2: 160, |
||||||
|
data3: 240 |
||||||
|
}, { |
||||||
|
data1: 50, |
||||||
|
data2: 200, |
||||||
|
data3: 290 |
||||||
|
}, { |
||||||
|
data1: 120, |
||||||
|
data2: 160, |
||||||
|
data3: 230 |
||||||
|
}, { |
||||||
|
data1: 80, |
||||||
|
data2: 130, |
||||||
|
data3: 300 |
||||||
|
}, { |
||||||
|
data1: 90, |
||||||
|
data2: 220, |
||||||
|
data3: 320 |
||||||
|
}]); |
||||||
|
}); |
||||||
|
|
||||||
|
it('throws when the row data contains undefined', () => { |
||||||
|
expect(() => $$.convertRowsToData([ |
||||||
|
['data1', 'data2', 'data3'], |
||||||
|
[40, 160, 240], |
||||||
|
[90, 120, undefined] |
||||||
|
])).toThrowError(Error, /Source data is missing a component/); |
||||||
|
}); |
||||||
|
}); |
Loading…
Reference in new issue