UNPKG

@snipsonian/core

Version:

Core/base reusable javascript code snippets

59 lines (47 loc) 1.59 kB
import appendQueryParams from './appendQueryParams'; describe('appendQueryParams():', () => { const url = 'http://some.domain.be'; it('just returns the url if no params provided', () => { const actual = appendQueryParams({ url, }); expect(actual).toEqual('http://some.domain.be'); }); it('just returns the url if empty params provided', () => { const actual = appendQueryParams({ url, params: {}, }); expect(actual).toEqual('http://some.domain.be'); }); it('appends the provided params correctly to the url', () => { const actual = appendQueryParams({ url, params: { first: 123, second: 'blabla', }, }); expect(actual).toEqual('http://some.domain.be?first=123&second=blabla'); }); it('no problem if the url already contained a query param', () => { const actual = appendQueryParams({ url: `${url}?already=777`, params: { first: 123, second: 'blabla', }, }); expect(actual).toEqual('http://some.domain.be?already=777&first=123&second=blabla'); }); it('string query params are encoded automatically', () => { const actual = appendQueryParams({ url, params: { first: 123, second: 'bla bla', }, }); expect(actual).toEqual('http://some.domain.be?first=123&second=bla%20bla'); }); });