blob: 932bff58d90ee7b237fc71cd8fcd5380b73b21d2 [file] [edit]
/* This file is a part of @mdn/browser-compat-data
* See LICENSE file for more information. */
/** @import {SupportStatement} from '../../types/types.js' */
import assert from 'node:assert/strict';
import { checkOverlap } from '../common/overlap.js';
/** @type {{ input: SupportStatement; output?: SupportStatement }[]} */
const tests = [
// Use version_added from following as version_removed of previous.
{
input: [
{
version_added: '3',
},
{
version_added: '1',
},
],
output: [
{
version_added: '3',
},
{
version_added: '1',
version_removed: '3',
},
],
},
// Don't touch open-ended stable/preview side-by-side.
{
input: [
{
version_added: 'preview',
},
{
version_added: '1',
},
],
},
// Don't touch flag data.
{
input: [
{
version_added: '126',
flags: [
{
name: '#web-machine-learning-neural-network',
type: 'preference',
value_to_set: 'Enabled',
},
],
notes: 'Supported on CPUs, GPUs and NPUs on macOS.',
},
{
version_added: '121',
flags: [
{
name: '#web-machine-learning-neural-network',
type: 'preference',
value_to_set: 'Enabled',
},
],
notes: 'Supported on GPUs and NPUs on Windows.',
},
{
version_added: '116',
flags: [
{
name: '#web-machine-learning-neural-network',
type: 'preference',
value_to_set: 'Enabled',
},
],
notes: 'Supported on CPUs on Windows, ChromeOS and Linux.',
},
],
},
];
describe('fix -> overlap', () => {
let i = 1;
for (const test of tests) {
it(`Test #${i}`, () => {
const result = checkOverlap(test.input, 'firefox', {
fix: true,
});
assert.deepStrictEqual(result, test.output ?? test.input);
});
i += 1;
}
});