All files / src/sso cookies.ts

100% Statements 7/7
100% Branches 2/2
100% Functions 2/2
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18        1x 2x 2x   2x   1x 1x     2x      
import http from 'http';
import { CookieList } from './interfaces';
 
// https://stackoverflow.com/questions/3393854/get-and-set-a-single-cookie-with-node-js-http-server
export function parseCookies(request: http.IncomingMessage): CookieList {
  const list: CookieList = {};
  const rc = request.headers.cookie;
 
  rc &&
    rc.split(';').forEach((cookie) => {
      const parts = cookie.split('=');
      list[parts.shift().trim()] = decodeURI(parts.join('='));
    });
 
  return list;
}