123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- describe('util/model', function() {
- var utHelper = window.utHelper;
- var modelUtil;
- beforeAll(function (done) { // jshint ignore:line
- utHelper.resetPackageLoader(function () {
- window.require(['echarts/util/model'], function (h) {
- modelUtil = h;
- done();
- });
- });
- });
- function makeRecords(result) {
- var o = {};
- modelUtil.eachAxisDim(function (dimNames) {
- o[dimNames.name] = {};
- var r = result[dimNames.name] || [];
- for (var i = 0; i < r.length; i++) {
- o[dimNames.name][r[i]] = true;
- }
- });
- return o;
- }
- describe('findLinkedNodes', function () {
- function forEachModel(models, callback) {
- for (var i = 0; i < models.length; i++) {
- callback(models[i]);
- }
- }
- function axisIndicesGetter(model, dimNames) {
- return model[dimNames.axisIndex];
- }
- it('findLinkedNodes_base', function (done) {
- var models = [
- {xAxisIndex: [1, 2], yAxisIndex: [0]},
- {xAxisIndex: [3], yAxisIndex: [1]},
- {xAxisIndex: [5], yAxisIndex: []},
- {xAxisIndex: [2, 5], yAxisIndex: []}
- ];
- var result = modelUtil.createLinkedNodesFinder(
- utHelper.curry(forEachModel, models),
- modelUtil.eachAxisDim,
- axisIndicesGetter
- )(models[0]);
- expect(result).toEqual({
- nodes: [models[0], models[3], models[2]],
- records: makeRecords({x: [1, 2, 5], y: [0]})
- });
- done();
- });
- it('findLinkedNodes_crossXY', function (done) {
- var models = [
- {xAxisIndex: [1, 2], yAxisIndex: [0]},
- {xAxisIndex: [3], yAxisIndex: [3, 0]},
- {xAxisIndex: [6, 3], yAxisIndex: [9]},
- {xAxisIndex: [5, 3], yAxisIndex: []},
- {xAxisIndex: [8], yAxisIndex: [4]}
- ];
- var result = modelUtil.createLinkedNodesFinder(
- utHelper.curry(forEachModel, models),
- modelUtil.eachAxisDim,
- axisIndicesGetter
- )(models[0]);
- expect(result).toEqual({
- nodes: [models[0], models[1], models[2], models[3]],
- records: makeRecords({x: [1, 2, 3, 5, 6], y: [0, 3, 9]})
- });
- done();
- });
- it('findLinkedNodes_emptySourceModel', function (done) {
- var models = [
- {xAxisIndex: [1, 2], yAxisIndex: [0]},
- {xAxisIndex: [3], yAxisIndex: [3, 0]},
- {xAxisIndex: [6, 3], yAxisIndex: [9]},
- {xAxisIndex: [5, 3], yAxisIndex: []},
- {xAxisIndex: [8], yAxisIndex: [4]}
- ];
- var result = modelUtil.createLinkedNodesFinder(
- utHelper.curry(forEachModel, models),
- modelUtil.eachAxisDim,
- axisIndicesGetter
- )();
- expect(result).toEqual({
- nodes: [],
- records: makeRecords({x: [], y: []})
- });
- done();
- });
- });
- });
|