1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-07-05 11:37:01 +02:00

Add tests for SNFE serialization (#3825)

This commit is contained in:
Manish Jethani 2021-08-15 21:19:23 +05:30 committed by GitHub
parent 0ec1204d37
commit 29cea49197
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -128,4 +128,53 @@ describe('SNFE', () => {
]));
});
});
describe('Serialization', () => {
beforeEach(async () => {
const globals = { URL, setTimeout, clearTimeout };
const { StaticNetFilteringEngine } = await createWorld('./index.js', { globals });
engine = await StaticNetFilteringEngine.create();
});
it('should not reject with no lists', async () => {
await engine.useLists([]);
await engine.serialize();
});
it('should not reject with one empty list', async () => {
await engine.useLists([
{ name: 'easylist', raw: '' },
]);
await engine.serialize();
});
it('should not reject with one list containing one filter', async () => {
await engine.useLists([
{ name: 'easylist', raw: '/foo^' },
]);
await engine.serialize();
});
it('should not reject with one list containing multiple filters', async () => {
await engine.useLists([
{ name: 'easylist', raw: '/foo^\n||example.com^' },
]);
await engine.serialize();
});
it('should not reject with multiple lists containing multiple filters', async () => {
await engine.useLists([
{ name: 'easylist', raw: '/foo^\n||example.com^' },
{ name: 'easyprivacy', raw: '||example.net/bar/\n^bar.js?' },
]);
await engine.serialize();
});
});
});