Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
34 lines
1.3 KiB
Plaintext
34 lines
1.3 KiB
Plaintext
import { describe, it, expect } from 'vitest';
|
|
import { parseCookies } from './cookies.js';
|
|
describe('parseCookies', ()=>{
|
|
it('parses cookie attributes without values', ()=>{
|
|
const fakeHeaders = new Map();
|
|
fakeHeaders.set('Cookie', 'my_value=true; Secure; HttpOnly');
|
|
const parsed = parseCookies(fakeHeaders);
|
|
expect(parsed.get('my_value')).toBe('true');
|
|
expect(parsed.get('Secure')).toBe('true');
|
|
expect(parsed.get('HttpOnly')).toBe('true');
|
|
expect(parsed.size).toBe(3);
|
|
});
|
|
it('strips whitespace', ()=>{
|
|
const fakeHeaders = new Map();
|
|
fakeHeaders.set('Cookie', 'my_value=true; ');
|
|
const parsed = parseCookies(fakeHeaders);
|
|
expect(parsed.get('my_value')).toBe('true');
|
|
expect(parsed.size).toBe(1);
|
|
});
|
|
it('ensure invalid cookies are ignored', ()=>{
|
|
const fakeHeaders = new Map();
|
|
fakeHeaders.set('Cookie', 'my_value=true; invalid_cookie=%E0%A4%A');
|
|
const parsed = parseCookies(fakeHeaders);
|
|
expect(parsed.get('my_value')).toBe('true');
|
|
expect(parsed.size).toBe(1);
|
|
});
|
|
it('ensure empty map is returned if there are no cookies', ()=>{
|
|
const fakeHeaders = new Map();
|
|
const parsed = parseCookies(fakeHeaders);
|
|
expect(parsed.size).toBe(0);
|
|
});
|
|
});
|
|
|
|
//# sourceMappingURL=cookies.spec.js.map |