npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@lightspeed/config-jest

v0.2.4

Published

Common Jest configuration for Lightspeed webapps

Downloads

1,049

Readme

@lightspeed/config-jest

npm version

Introduction

Jest dependencies and configuration for both JavaScript and TypeScript in a convenient package.

Important note

This configuration is meant for Babel+TypeScript projects only, which is our default setup for Lightspeed web applications. For pure TypeScript projects, please use ts-jest directly instead.

Quick Start

Install

Install the dependencies (@types/jest is only needed if your project uses TypeScript):

yarn add -D @lightspeed/config-jest jest @types/jest

Setup

Consume the Jest configuration by creating a jest.config.js file:

// jest.config.js
module.exports = require('@lightspeed/config-jest');

Optionally, extend the configuration as you see fit:

// jest.config.js
const baseConfig = require('@lightspeed/config-jest');

module.exports = Object.assign(baseConfig, {
  testPathIgnorePatterns: ['<rootDir>/some-dir'],
});

You can also add your own jest.setup.js file with setupFilesAfterEnv:

// jest.config.js
const baseConfig = require('@lightspeed/config-jest');

module.exports = Object.assign(baseConfig, {
  setupFilesAfterEnv: ['<rootDir>/jest.setup.js'],
});

React projects

If in a React project, we highly recommend installing @testing-library/react and @testing-library/jest-dom as they are amazing testing tools on top of Jest for React.

Install dependencies:

yarn add -D @testing-library/react @testing-library/jest-dom

Then, in your jest.setup.js file, add:

// add some helpful assertions
require('@testing-library/jest-dom/extend-expect');

Note that react-testing-library methods will be available out of the box after installing the library

Node projects

For node-only projects, you must set testEnvironment to node instead of the default jsdom:

// jest.config.js
const baseConfig = require('@lightspeed/config-jest');

module.exports = Object.assign(baseConfig, {
  testEnvironment: 'node',
});

Add an npm script to run your tests

Finally, add an npm script to run jest:

{
  "scripts": {
    "test": "jest"
  }
}

By default jest will run tests on any file named with *.test.(js|jsx|ts|tsx).

Go forth and test away! 🎉