2020-04-19 16:30:38 +08:00
|
|
|
/*
|
|
|
|
* @Author: early-autumn
|
|
|
|
* @Date: 2020-04-19 14:34:13
|
|
|
|
* @LastEditors: early-autumn
|
2020-04-20 10:34:16 +08:00
|
|
|
* @LastEditTime: 2020-04-20 09:58:22
|
2020-04-19 16:30:38 +08:00
|
|
|
*/
|
2020-04-20 01:15:43 +08:00
|
|
|
import buildURL from '../../src/helpers/buildURL';
|
2020-04-19 16:30:38 +08:00
|
|
|
|
2020-04-20 10:34:16 +08:00
|
|
|
describe('测试 src/helpers/buildURL.ts', () => {
|
2020-04-19 16:30:38 +08:00
|
|
|
it('url', () => {
|
|
|
|
expect(buildURL('/test')).toBe('/test');
|
|
|
|
expect(buildURL('/test?id=1')).toBe('/test?id=1');
|
|
|
|
});
|
|
|
|
|
|
|
|
it('url + params', () => {
|
|
|
|
expect(
|
|
|
|
buildURL('/test', {
|
|
|
|
test: 1,
|
|
|
|
})
|
|
|
|
).toBe('/test?test=1');
|
|
|
|
expect(
|
|
|
|
buildURL('/test?id=1', {
|
|
|
|
test: 1,
|
|
|
|
})
|
|
|
|
).toBe('/test?id=1&test=1');
|
|
|
|
});
|
|
|
|
|
|
|
|
it('url + params + paramsSerializer', () => {
|
|
|
|
expect(
|
|
|
|
buildURL(
|
|
|
|
'/test',
|
|
|
|
{
|
|
|
|
test: 1,
|
|
|
|
},
|
|
|
|
() => 'paramsSerializer=ok'
|
|
|
|
)
|
|
|
|
).toBe('/test?paramsSerializer=ok');
|
|
|
|
expect(
|
|
|
|
buildURL(
|
|
|
|
'/test?id=1',
|
|
|
|
{
|
|
|
|
test: 1,
|
|
|
|
},
|
|
|
|
() => 'paramsSerializer=ok'
|
|
|
|
)
|
|
|
|
).toBe('/test?id=1¶msSerializer=ok');
|
|
|
|
});
|
2020-04-20 01:15:43 +08:00
|
|
|
|
2020-04-20 10:34:16 +08:00
|
|
|
it('params 是数组', () => {
|
|
|
|
expect(
|
|
|
|
buildURL('/test', {
|
|
|
|
ids: [1],
|
|
|
|
})
|
|
|
|
).toBe('/test?ids[]=1');
|
|
|
|
});
|
|
|
|
|
|
|
|
it('params 是时间对象', () => {
|
|
|
|
const date = new Date();
|
|
|
|
expect(
|
|
|
|
buildURL('/test', {
|
|
|
|
date,
|
|
|
|
})
|
|
|
|
).toBe(`/test?date=${date.toISOString()}`);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('params 是普通对象', () => {
|
|
|
|
const obj = {};
|
|
|
|
expect(
|
|
|
|
buildURL('/test', {
|
|
|
|
obj,
|
|
|
|
})
|
|
|
|
).toBe(`/test?obj=%7B%7D`);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('删除哈希', () => {
|
2020-04-20 01:15:43 +08:00
|
|
|
expect(buildURL('/test#192929')).toBe('/test');
|
|
|
|
});
|
2020-04-20 10:34:16 +08:00
|
|
|
|
|
|
|
it('容错', () => {
|
|
|
|
expect(
|
|
|
|
buildURL('/test', {
|
|
|
|
null: null,
|
|
|
|
undefined: undefined,
|
|
|
|
NaN: NaN,
|
|
|
|
})
|
|
|
|
).toBe('/test');
|
|
|
|
});
|
2020-04-19 16:30:38 +08:00
|
|
|
});
|