deno.land / x / ky@v0.31.3 / test / prefix-url.ts

نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import test from 'ava';import ky from '../source/index.js';import {createHttpTestServer} from './helpers/create-http-test-server.js';
test('prefixUrl option', async t => { const server = await createHttpTestServer(); server.get('/', (_request, response) => { response.end('zebra'); }); server.get('/api/unicorn', (_request, response) => { response.end('rainbow'); });
t.is( // @ts-expect-error {prefixUrl: boolean} isn't officially supported await ky(`${server.url}/api/unicorn`, {prefixUrl: false}).text(), 'rainbow', ); t.is(await ky(`${server.url}/api/unicorn`, {prefixUrl: ''}).text(), 'rainbow'); t.is(await ky(new URL(`${server.url}/api/unicorn`), {prefixUrl: ''}).text(), 'rainbow'); t.is(await ky('api/unicorn', {prefixUrl: server.url}).text(), 'rainbow'); t.is(await ky('api/unicorn', {prefixUrl: new URL(server.url)}).text(), 'rainbow'); t.is(await ky('unicorn', {prefixUrl: `${server.url}/api`}).text(), 'rainbow'); t.is(await ky('unicorn', {prefixUrl: `${server.url}/api/`}).text(), 'rainbow'); t.is(await ky('unicorn', {prefixUrl: new URL(`${server.url}/api`)}).text(), 'rainbow'); t.is(await ky('', {prefixUrl: server.url}).text(), 'zebra'); t.is(await ky('', {prefixUrl: `${server.url}/`}).text(), 'zebra'); t.is(await ky('', {prefixUrl: new URL(server.url)}).text(), 'zebra');
t.throws( () => { void ky('/unicorn', {prefixUrl: `${server.url}/api`}); }, { message: '`input` must not begin with a slash when using `prefixUrl`', }, );
await server.close();});
ky

Version Info

Tagged at
a year ago