UNPKG

@froalacharts/charts

Version:

Froala Charts - A collection of interactive charts to build data visualizations for web and mobile applications.

1 lines 6.57 kB
"use strict";var _interopRequireWildcard=require("@babel/runtime/helpers/interopRequireWildcard");var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _core=_interopRequireDefault(require("../../../../froalacharts/core"));var _index=_interopRequireDefault(require("./index"));var _msbar2d=_interopRequireDefault(require("../../../../../smoke-test/test-sanity/msbar2d.sanity"));var _ignoreCaseExt=_interopRequireDefault(require("../../../../fc-features/src/ignore-case-ext"));var _utility=require("../../../../../smoke-test/test-sanity/utility");var _lib=require("../../../../fc-core/src/lib/");var _common=_interopRequireDefault(require("../../../../../smoke-test/test-sanity/common.sanity"));var chartData=_interopRequireWildcard(require("../../../../../smoke-test/test-data/data-by-chart"));_core["default"].addDep(_index["default"]);_core["default"].addDep(_ignoreCaseExt["default"]);var svgElement,chartName=_index["default"].getName(),chartID=chartName.toLowerCase(),doc=window.document;describe("Running common chart tests for "+chartName,(function(){var chart={type:chartID,renderAt:_utility.CONTAINER_ID,width:_utility.initDimensions.width,height:_utility.initDimensions.height,dataFormat:"json",dataSource:{}},config={chartID:chartID,chart:chart,document:doc,chartWrapperId:_utility.CONTAINER_ID};_common["default"].forEach((function(test){var itArr;if(test.name&&test.run){it(test.name,(function(done){test.run(config,(function(result){expect(result).toBe(true);done()}))}))}else if(test.iterator){itArr=test.iterator(chart);itArr.forEach((function(subTest){it(subTest.name,(function(done){subTest.run(config,(function(result){expect(result).toBe(true);done()}))}))}))}}))}));describe("Chart basic testing: "+chartName,(function(){var chart,chartObj,itResize,renderData=_msbar2d["default"].BASIC.newChart,updateData=_msbar2d["default"].BASIC.updateChart;chart={type:chartID,renderAt:_utility.CONTAINER_ID};(0,_lib.extend2)(chart,renderData);chart.dataSource=chart.dataSource?chart.dataSource:chartData[chartID]["default"];chart.dataSource.chart.animation="0";beforeEach((function(){chartObj=(0,_utility.setup)(_core["default"],chart)}));afterEach((function(){if(chartObj&&!chartObj.disposed)chartObj.dispose()}));it("Rendered chart validation passes",(function(done){expect(chartObj).toBeDefined();var renderComplete=function renderComplete(){var response=_msbar2d["default"].BASIC.validate(chartObj);expect(response.flag).toBe(true,response.messages.join(" && "));done()};chartObj.render();chartObj.addEventListener("renderComplete",renderComplete)}));it("Chart update passes",(function(done){expect(chartObj).toBeDefined();var called=0;var renderComplete=function renderComplete(){if(called===0){called++;chartObj.setChartData(updateData||chart.dataSource,"json")}else if(called===1){var response=_msbar2d["default"].BASIC.updateValidate(chartObj);expect(response.flag).toBe(true,response.messages.join(" && "));done()}};chartObj.addEventListener("renderComplete",renderComplete);chartObj.render()}));itResize=function itResize(resizeDimensions){it("Chart resize passes for "+resizeDimensions.width+" x "+resizeDimensions.height,(function(done){expect(chartObj).toBeDefined();var renderComplete=function renderComplete(){var response=_msbar2d["default"].BASIC.resizeValidate(chartObj);expect(response.flag).toBe(true,response.messages.join(" && "));done()};chartObj.addEventListener("renderComplete",renderComplete);chartObj.render((function(){chartObj.resizeTo(resizeDimensions.width,resizeDimensions.height)}))}))};for(var index=0;index<_utility.resizeDimensions.length;index++){itResize(_utility.resizeDimensions[index])}}));describe("Chart EI testing: "+_index["default"].getName(),(function(){var chart,chartObj,eiMethods,renderData=_msbar2d["default"].EI.newChart;chart={type:chartID,renderAt:_utility.CONTAINER_ID};(0,_lib.extend2)(chart,renderData);chart.dataSource=chart.dataSource?chart.dataSource:chartData[chartID]["default"];chart.dataSource.chart.animation="0";beforeEach((function(){chartObj=(0,_utility.setup)(_core["default"],chart)}));afterEach((function(){if(chartObj&&!chartObj.disposed)chartObj.dispose()}));eiMethods=function eiMethods(methodObj){it(methodObj.name,(function(done){expect(chartObj).toBeDefined();var renderComplete=function renderComplete(){svgElement=(0,_utility.getSVG)(chartObj);methodObj.fn(svgElement,chartObj,(function(result){expect(result).toBe(true);done()}))};chartObj.addEventListener("renderComplete",renderComplete);chartObj.render()}))};for(var key in _msbar2d["default"].EI.methods){if(_msbar2d["default"].EI.methods.hasOwnProperty(key)){eiMethods(_msbar2d["default"].EI.methods[key])}}}));describe("Text outline testing "+chartName,(function(){var chart,chartObj,itResize,renderData={chart:{caption:"Business Results 2005 v 2006",xaxisname:"Month",yaxisname:"Revenue",showvalues:"1",textoutline:"1",animation:"1"},categories:[{category:[{label:"Jan"},{label:"Feb"},{label:"Mar"}]}],dataset:[{seriesname:"2006",data:[{value:"27400"},{value:"29800"},{value:"25800"}]},{seriesname:"2005",data:[{value:"10000"},{value:"11500"},{value:"12500"}]}]},updateDataWithNoOutline={chart:{caption:"Business Results 2005 v 2006",xaxisname:"Month",yaxisname:"Revenue",showvalues:"1",animation:"1"},categories:[{category:[{label:"Jan"},{label:"Feb"},{label:"Mar"}]}],dataset:[{seriesname:"2006",data:[{value:"27400"},{value:"29800"},{value:"25800"}]},{seriesname:"2005",data:[{value:"10000"},{value:"11500"},{value:"12500"}]}]};chart={type:chartID,renderAt:_utility.CONTAINER_ID,dataSource:renderData};beforeEach((function(){chartObj=(0,_utility.setup)(_core["default"],chart)}));afterEach((function(){if(chartObj&&!chartObj.disposed)chartObj.dispose()}));it("Text outline should get applied",(function(done){var renderComplete=function renderComplete(){var labelElement=document.querySelector('[class$="label-group froalacharts-datalabels"]').getElementsByTagName("text")[0];expect(labelElement.getAttribute("filter")).not.toBe(null);done()};chartObj.addEventListener("renderComplete",renderComplete);chartObj.render()}));it("Text outline should be removed",(function(done){var updateFlag=0,renderComplete=function renderComplete(){if(!updateFlag){updateFlag=1;chartObj.setJSONData(updateDataWithNoOutline)}else{var labelElement=document.querySelector('[class$="label-group froalacharts-datalabels"]').getElementsByTagName("text")[0];expect(labelElement.getAttribute("filter")).toBe(null);done()}};chartObj.addEventListener("renderComplete",renderComplete);chartObj.render()}))}));