import * as DG from 'datagrok-api/dg'; import * as grok from 'datagrok-api/grok'; import {category, test, testViewer} from '@datagrok-libraries/test/src/test'; category('Viewers', () => { const df = grok.data.demo.demog(100); const viewers = DG.Func.find({package: 'Charts', meta: {role: DG.FUNC_TYPES.VIEWER}}).map((f) => f.friendlyName); const viewersToSkip: {[v: string]: string} = { // 'Globe': 'GROK-14320', 'Surface plot': 'GROK-18695: deterministic EXECUTION TIMEOUT in headless CI (echarts-gl WebGL); reproduces on echarts 5 and 6', }; for (const v of viewers) { test(v, async () => { await testViewer(v, await (async () => { if (['Sankey', 'Chord'].includes(v)) return (await grok.data.getDemoTable('energy_uk.csv')); else if (['Tree', 'Sunburst'].includes(v)) return (await grok.data.getDemoTable('demog.csv')); else if (v === 'Globe') return (await grok.data.getDemoTable('geo/earthquakes.csv')); return df.clone(); })(), {detectSemanticTypes: true, arbitraryDfTest: v === 'Globe' ? false : undefined}); }, v in viewersToSkip ? {skipReason: viewersToSkip[v]} : {}); } });