All files / src/sso cookies.ts

100% Statements 7/7
100% Branches 4/4
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        1x 8x 8x   8x 5x 5x     8x    
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?.split(';').forEach((cookie) => {
    const parts = cookie.split('=');
    list[(parts.shift() as string).trim()] = decodeURI(parts.join('='));
  });
 
  return list;
}