77178: Tests for getEmbedSizeParams selector

This commit is contained in:
Marie Verdonck
2021-03-11 16:41:22 +01:00
parent f1fa69bb3b
commit 5ecab7de12

View File

@@ -1,4 +1,5 @@
import { getUrlWithoutEmbedParams } from './index.selectors'; import { getEmbedSizeParams, getUrlWithoutEmbedParams } from './index.selectors';
describe(`index selectors`, () => { describe(`index selectors`, () => {
@@ -29,4 +30,38 @@ describe(`index selectors`, () => {
}); });
describe(`getEmbedSizeParams`, () => {
it(`url with single embed size param => should return list with ['subcommunities' - size]`, () => {
const source = 'https://rest.api/core/communities/search/top?page=0&size=50&sort=dc.title,ASC&embed.size=subcommunities=5&embed=subcommunities';
const result = getEmbedSizeParams(source);
expect(result).toHaveSize(1);
expect(result[0]).toEqual({name: 'subcommunities', size: 5});
});
it(`url with multiple embed size param => should return list with {name, size}`, () => {
const source = 'https://rest.api/core/communities/search/top?page=0&size=50&sort=dc.title,ASC&embed.size=subcommunities=5&embed=subcommunities&embed.size=collections=1&embed=collections';
const result = getEmbedSizeParams(source);
expect(result).toHaveSize(2);
expect(result[0]).toEqual({name: 'subcommunities', size: 5});
expect(result[1]).toEqual({name: 'collections', size: 1});
});
it(`url without params => should return empty list`, () => {
const source = 'https://rest.api/core/collections/uuid';
expect(getEmbedSizeParams(source)).toHaveSize(0);
});
it(`url without embed size params => should return empty list`, () => {
const source = 'https://rest.api/core/collections/uuid?page=0&size=50';
expect(getEmbedSizeParams(source)).toHaveSize(0);
});
it(`undefined or null url => should return empty list`, () => {
expect(getEmbedSizeParams(undefined)).toHaveSize(0);
expect(getEmbedSizeParams(null)).toHaveSize(0);
});
});
}); });