| |
| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| import { createChart } from '../../core/utHelper'; |
| import { EChartsType } from '../../../../src/echarts'; |
| |
| |
| describe('api/getVisual', function () { |
| |
| // TODO |
| // test each chart type, which may set visual on view which can not get from List. |
| // each of which should test visual map. |
| // symbol and symbolSize should be tested. |
| |
| let chart: EChartsType; |
| beforeEach(function () { |
| chart = createChart(); |
| }); |
| |
| afterEach(function () { |
| chart.dispose(); |
| }); |
| |
| it('scatter', function () { |
| chart.setOption({ |
| xAxis: {}, |
| yAxis: {}, |
| color: ['#000', '#111', '#222'], |
| visualMap: { |
| seriesIndex: 3, |
| dimension: 1, |
| min: 0, |
| max: 10000, |
| inRange: { |
| color: 'red' |
| } |
| }, |
| series: [ |
| { |
| id: 'k0', |
| type: 'scatter', |
| data: [[1000, 700], [333, 222]] |
| }, |
| { |
| id: 'k1', |
| type: 'scatter', |
| data: [[10, 7]], |
| itemStyle: { |
| color: '#fff' |
| } |
| }, |
| { |
| id: 'k2', |
| type: 'scatter', |
| data: [ |
| [10, 7], |
| { |
| value: [333, 222], |
| itemStyle: { |
| color: '#ff0' |
| } |
| } |
| ], |
| itemStyle: { |
| color: '#eee' |
| } |
| }, |
| { |
| id: 'k3', |
| type: 'scatter', |
| data: [ |
| [10, 7], |
| { |
| value: [333, 9999], |
| itemStyle: { |
| color: 'red' |
| } |
| } |
| ], |
| itemStyle: { |
| color: '#eee' |
| } |
| } |
| ] |
| }); |
| |
| expect(chart.getVisual({dataIndex: 1}, 'color')).toEqual('#000'); |
| |
| expect(chart.getVisual({dataIndex: 0, seriesIndex: 1}, 'color')).toEqual('#fff'); |
| expect(chart.getVisual({seriesIndex: 1}, 'color')).toEqual('#fff'); |
| |
| expect(chart.getVisual({dataIndex: 1, seriesId: 'k2'}, 'color')).toEqual('#ff0'); |
| expect(chart.getVisual({seriesId: 'k2'}, 'color')).toEqual('#eee'); |
| |
| expect(chart.getVisual({dataIndex: 1, seriesId: 'k3'}, 'color')).toEqual('red'); |
| expect(chart.getVisual({seriesId: 'k3'}, 'color')).toEqual('#eee'); |
| }); |
| |
| |
| it('dataZoom', function () { |
| |
| chart.setOption({ |
| xAxis: {}, |
| yAxis: {}, |
| color: ['#000', '#111', '#222'], |
| dataZoom: { |
| xAxisIndex: 0, |
| startValue: 45 |
| }, |
| series: [ |
| { |
| id: 'k2', |
| type: 'scatter', |
| data: [ |
| [10, 7], |
| [20, 7], |
| [30, 7], |
| [40, 7], |
| { |
| value: [50, 222], |
| itemStyle: { |
| color: '#ff0' |
| } |
| } |
| ], |
| itemStyle: { |
| color: '#eee' |
| } |
| } |
| ] |
| }); |
| |
| expect(chart.getVisual({dataIndex: 4, seriesId: 'k2'}, 'color')).toEqual('#ff0'); |
| expect(chart.getVisual({dataIndexInside: 0, seriesId: 'k2'}, 'color')).toEqual('#ff0'); |
| expect(chart.getVisual({dataIndex: 1, seriesId: 'k2'}, 'color')).toEqual('#eee'); |
| }); |
| |
| |
| // it('pie', function () { |
| // const chart = this.chart; |
| |
| // chart.setOption({ |
| // series: [ |
| // { |
| // id: 'k1', |
| // type: 'pie', |
| // center: [40, '50%'], |
| // radius: [10, '50%'], |
| // data: [ |
| // {x: 1000, y: 2000}, |
| // {x: 1000, y: 5000}, |
| // {x: 3000, y: 5000}, |
| // {x: 3000, y: 2000} |
| // ], |
| // links: [] |
| // } |
| // ] |
| // }); |
| |
| // const height = chart.getHeight(); |
| |
| // expect(chart.containPixel('series', [40, height / 2])).toEqual(false); |
| // expect(chart.containPixel('series', [40, height / 2 + 10])).toEqual(true); |
| // expect(chart.containPixel('series', [9.5, 1])).toEqual(false); |
| // }); |
| |
| |
| // it('graph', function () { |
| // const chart = this.chart; |
| |
| // chart.setOption({ |
| // series: [ |
| // { |
| // id: 'k1', |
| // type: 'graph', |
| // left: 10, |
| // right: '50%', |
| // top: 30, |
| // bottom: 40, |
| // data: [ |
| // {x: 1000, y: 2000}, |
| // {x: 1000, y: 5000}, |
| // {x: 3000, y: 5000}, |
| // {x: 3000, y: 2000} |
| // ], |
| // links: [] |
| // } |
| // ] |
| // }); |
| |
| // expect(chart.containPixel('series', [15, 35])).toEqual(true); |
| // expect(chart.containPixel('series', [3, 4])).toEqual(false); |
| // }); |
| |
| |
| }); |