Skip to content

Commit

Permalink
refactor: move test functions to helpers
Browse files Browse the repository at this point in the history
  • Loading branch information
jsjoeio committed Feb 22, 2021
1 parent daac2d1 commit 7cf71da
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 24 deletions.
22 changes: 0 additions & 22 deletions src/common/util.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { logger, field } from "@coder/logger"
import { Cookie } from "../../test/helpers"

export interface Options {
base: string
Expand Down Expand Up @@ -121,24 +120,3 @@ export function logError(prefix: string, err: any): void {
logger.error(`${prefix}: ${err}`)
}
}

/**
* Checks if a cookie exists in array of cookies
*/
export function checkForCookie(cookies: Array<Cookie>, key: string): boolean {
// Check for a cookie where the name is equal to key
return Boolean(cookies.find((cookie) => cookie.name === key))
}

/**
* Creates a login cookie if one doesn't already exist
*/
export function createCookieIfDoesntExist(cookies: Array<Cookie>, cookieToStore: Cookie): Array<Cookie> {
const cookieName = cookieToStore.name
const doesCookieExist = checkForCookie(cookies, cookieName)
if (!doesCookieExist) {
const updatedCookies = [...cookies, cookieToStore]
return updatedCookies
}
return cookies
}
21 changes: 21 additions & 0 deletions test/helpers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,24 @@ export interface Cookie {
secure: boolean
sameSite: "Strict" | "Lax" | "None"
}

/**
* Checks if a cookie exists in array of cookies
*/
export function checkForCookie(cookies: Array<Cookie>, key: string): boolean {
// Check for a cookie where the name is equal to key
return Boolean(cookies.find((cookie) => cookie.name === key))
}

/**
* Creates a login cookie if one doesn't already exist
*/
export function createCookieIfDoesntExist(cookies: Array<Cookie>, cookieToStore: Cookie): Array<Cookie> {
const cookieName = cookieToStore.name
const doesCookieExist = checkForCookie(cookies, cookieName)
if (!doesCookieExist) {
const updatedCookies = [...cookies, cookieToStore]
return updatedCookies
}
return cookies
}
3 changes: 1 addition & 2 deletions test/util.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,12 @@ import {
resolveBase,
split,
trimSlashes,
checkForCookie,
createCookieIfDoesntExist,
normalize,
} from "../src/common/util"
import { Cookie as CookieEnum } from "../src/node/routes/login"
import { hash } from "../src/node/util"
import { PASSWORD } from "./constants"
import { checkForCookie, createCookieIfDoesntExist } from "./helpers"

const dom = new JSDOM()
global.document = dom.window.document
Expand Down

0 comments on commit 7cf71da

Please sign in to comment.