|  |  | 
|  | /* | 
|  | * 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); | 
|  | // }); | 
|  |  | 
|  |  | 
|  | }); |