UNPKG

alagarr

Version:

Alagarr is a request-response helper library that removes the boilerplate from your Node.js serverless functions and helps make your code portable.

67 lines (66 loc) 2.71 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const requests_1 = require("../../../test/fixtures/requests"); const cookies_1 = __importDefault(require("./cookies")); const testRequest = Object.assign({}, requests_1.get, { headers: { cookie: 'PHPSESSID=e61d68c319d12269c6af8cd939298857; REMEMBERME=yah; locale=de_DE', } }); describe('Request cookies', () => { test('get parsed', () => { const expected = Object.assign({}, testRequest, { cookies: { PHPSESSID: 'e61d68c319d12269c6af8cd939298857', REMEMBERME: 'yah', locale: 'de_DE', } }); const request = cookies_1.default(testRequest); expect(request).toEqual(expected); }); test('header might not exist', () => { const expected = Object.assign({}, testRequest, { cookies: {}, headers: {} }); const request = cookies_1.default(Object.assign({}, testRequest, { headers: {} })); expect(request).toEqual(expected); }); test('should handle quoted cookie values', () => { const testCookieHeader = { headers: { cookie: 'foo="bar"; foobar=1', }, }; const expected = Object.assign({}, testRequest, testCookieHeader, { cookies: { foo: 'bar', foobar: '1', } }); const request = cookies_1.default(Object.assign({}, testRequest, testCookieHeader)); expect(request).toEqual(expected); }); test('should handle empty cookie values', () => { const testCookieHeader = { headers: { cookie: 'foo=bar; foobar=', }, }; const expected = Object.assign({}, testRequest, testCookieHeader, { cookies: { foo: 'bar', foobar: '', } }); const request = cookies_1.default(Object.assign({}, testRequest, testCookieHeader)); expect(request).toEqual(expected); }); test('should handle messed up cookie values', () => { const testCookieHeader = { headers: { cookie: 'foo=bar; foobar foofoo; barbar=1; broke=2 yup=', }, }; const expected = Object.assign({}, testRequest, testCookieHeader, { cookies: { barbar: '1', broke: '2 yup=', foo: 'bar', } }); const request = cookies_1.default(Object.assign({}, testRequest, testCookieHeader)); expect(request).toEqual(expected); }); });