Socket
Socket
Sign inDemoInstall

@tapjs/before

Package Overview
Dependencies
121
Maintainers
2
Versions
53
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @tapjs/before

a built-in tap extension for t.before()


Version published
Maintainers
2
Created

Readme

Source

@tapjs/before

A default tap plugin providing t.before().

USAGE

This plugin is installed with tap by default. If you had previously removed it, you can tap plugin add @tapjs/before to bring it back.

import t from 'tap'
t.before(() => {
  // this will run before the tests in this file start
})

If the method returns a promise, it will be awaited before moving on to the next test.

A t.before() method will run prior to any subsequent child tests. If it's called before any child tests have started, then it will be run right away.

So, this test:

import t from 'tap'

t.before(() => {
  console.error('before initial')
})

t.test('first test', t => {
  t.before(async () => {
    // this will wait before moving on
    await new Promise(res => setTimeout(res, 100))
    console.error('before in first test')
  })
  console.error('in first test')
  t.test('child test', t => {
    console.error('child of first test')
    t.end()
  })
  t.end()
})

t.before(() => {
  console.error('before between')
})

t.test('second test', t => {
  console.error('in second test')
  t.end()
})

will print:

before initial
in first test
before in first test
child of first test
before between
in second test

Essentially, t.before() is a bit like a child test method that doesn't get a Test object as an argument.

Keywords

FAQs

Last updated on 06 May 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc