mirror of
https://github.com/tenrok/axios.git
synced 2026-06-17 19:21:29 +03:00
d905b7598d
* chore: port karma tests * chore: port karma tests * chore: port karma tests * chore: tests * chore: tests * chore: tests * chore: fix issues with port collisions * refactor: utils tests * refactor: utils tests * refactor: utils tests * refactor: tests to vitests * refactor: tests to vitests * refactor: tests to vitests * refactor: tests to vitests * refactor: tests to vitests * refactor: tests to vitests * refactor: tests to vitests * refactor: ci * chore: install pw deps * chore: fixx ai feedback * chore: wip compatability tests * chore: wip compatability tests * chore: wip compatability tests * refactor: wip smoke * chore: smoke test run * chore: update unzip * chore: update testing * chore: update testing * chore: update testing * chore: update testing * chore: update testing * chore: skip tests that cannot run on node 16 and lower * chore: fix 16x under tests * chore: rest of tests * fix: functions and runs * feat: added tests for esm smoke * feat: added smoke * chore: ignore ai gen plans * chore: ci fixes * chore: fix small p2s
44 lines
1.4 KiB
JavaScript
44 lines
1.4 KiB
JavaScript
import { describe, it, expect } from 'vitest';
|
|
import parseHeaders from '../../../lib/helpers/parseHeaders.js';
|
|
|
|
describe('helpers::parseHeaders', () => {
|
|
it('should parse headers', () => {
|
|
const date = new Date();
|
|
const parsed = parseHeaders(
|
|
'Date: ' +
|
|
date.toISOString() +
|
|
'\n' +
|
|
'Content-Type: application/json\n' +
|
|
'Connection: keep-alive\n' +
|
|
'Transfer-Encoding: chunked'
|
|
);
|
|
|
|
expect(parsed.date).toEqual(date.toISOString());
|
|
expect(parsed['content-type']).toEqual('application/json');
|
|
expect(parsed.connection).toEqual('keep-alive');
|
|
expect(parsed['transfer-encoding']).toEqual('chunked');
|
|
});
|
|
|
|
it('should use array for set-cookie', () => {
|
|
const parsedZero = parseHeaders('');
|
|
const parsedSingle = parseHeaders('Set-Cookie: key=val;');
|
|
const parsedMulti = parseHeaders('Set-Cookie: key=val;\n' + 'Set-Cookie: key2=val2;\n');
|
|
|
|
expect(parsedZero['set-cookie']).toBeUndefined();
|
|
expect(parsedSingle['set-cookie']).toEqual(['key=val;']);
|
|
expect(parsedMulti['set-cookie']).toEqual(['key=val;', 'key2=val2;']);
|
|
});
|
|
|
|
it('should handle duplicates', () => {
|
|
const parsed = parseHeaders(
|
|
'Age: age-a\n' +
|
|
'Age: age-b\n' +
|
|
'Foo: foo-a\n' +
|
|
'Foo: foo-b\n'
|
|
);
|
|
|
|
expect(parsed.age).toEqual('age-a');
|
|
expect(parsed.foo).toEqual('foo-a, foo-b');
|
|
});
|
|
});
|