38 lines
1.6 KiB
JavaScript
38 lines
1.6 KiB
JavaScript
// Generated, do not edit. sha256:dee69ed94d0c46ad53fcee0939fbd4ffebc4fa1ade845e5f22219f49d6164da7
|
|||
|
|
import { describe, it } from 'node:test';
|
||
|
|
import assert from 'node:assert/strict';
|
||
|
|
import { installDom } from '../helpers/mini-dom.mjs';
|
||
|
|
|
||
|
|
const dom = installDom();
|
||
|
|
const { loadCharting, readPalette } = await import('../../client/ui/chart-setup.js');
|
||
|
|
|
||
|
|
describe('chart-setup: het palet van Assets', () => {
|
||
|
|
it('heeft het gedeelde palet plus de lijnladder en de signaalkleuren', () => {
|
||
|
|
const root = dom.document.documentElement;
|
||
|
|
root.style.setProperty('--accent', '#FF6B00');
|
||
|
|
root.style.setProperty('--sig-red', '#e00');
|
||
|
|
root.style.setProperty('--ring-seam', '2');
|
||
|
|
root.style.setProperty('--ring-sheen', '1');
|
||
|
|
const p = readPalette();
|
||
|
|
assert.equal(p.accent, '#FF6B00');
|
||
|
|
assert.equal(p.accentMid, 'rgba(255,107,0,0.725)');
|
||
|
|
assert.equal(p.accentFaint, 'rgba(255,107,0,0.45)');
|
||
|
|
assert.equal(p.sigRed, '#e00');
|
||
|
|
assert.equal(p.red, '#e00');
|
||
|
|
assert.equal(p.ringSeam, 2);
|
||
|
|
assert.equal(p.ringSheen, true);
|
||
|
|
assert.equal(typeof p.series, 'function', 'het gedeelde deel komt mee');
|
||
|
|
});
|
||
|
|
});
|
||
|
|
|
||
|
|
describe('chart-setup: laden', () => {
|
||
|
|
it('laadt de bibliotheken uit CONFIG en meldt een laadfout in het Nederlands', async () => {
|
||
|
|
delete window.Chart;
|
||
|
|
const p = loadCharting();
|
||
|
|
await new Promise(r => setImmediate(r));
|
||
|
|
const script = dom.document.head.querySelector('script');
|
||
|
|
assert.match(script.getAttribute('src'), /^vendor\/chartjs\//);
|
||
|
|
script.onerror();
|
||
|
|
await assert.rejects(p, err => !/Cannot load/.test(err.message) && err.message.includes(script.getAttribute('src')));
|
||
|
|
});
|
||
|
|
});
|