0.2.0 • Published 5 years ago

@mock/global v0.2.0

Weekly downloads
1
License
MIT
Repository
github
Last release
5 years ago

@mock/global npm

Mock global scope and global object.

Install

$ yarn add --dev @mock/global

Usage

type TMocks = {
    [key: string]: any
}

const mockGlobal: (file: string, mocks: TMocks) => () => void
// wait-for-5-min.ts
export const waitFor5Min = (): Promise<void> => new Promise((resolve) => {
  setTimeout(resolve, 5 * 60 * 1000)
})
import test from 'blue-tape'
import { mockGlobal } from '@mock/global'

test('waitFor30Sec', (t) => {
  const unmockGlobal = mockGlobal('./wait-for-30-sec', {
    setTimeout: (callback: () => void, delay: number) => {
      t.equal(
        delay,
        5 * 60 * 1000,
        'should wait for 5 min'
      )

      callback()
    }
  })

  const { waitFor5Min } = await import('./wait-for-30-sec')

  await waitFor5Min()

  unmockGlobal()
})