earl icon indicating copy to clipboard operation
earl copied to clipboard

☕ Ergonomic, modern and type-safe assertion library for TypeScript

Earl

Ergonomic, modern and type-safe assertion library for TypeScript

Brings good parts of Jest back to good ol' Mocha

Build status Software License All contributors Join our discord!

Features

  • 💪 Powerful validators and matchers
  • 🤖 Type-safe - written in TypeScript and goes well with static analysis
  • 🎭 Builtin support for mocks
  • ☕ Works great with Mocha
  • 📸 Snapshot testing
  • 🔌 Extensible with plugins

Installation

npm install --save-dev earljs

Example

import { expect } from 'earljs'

// ...

expect(response).toEqual({
  body: { trimmed: true, timestamp: expect.a(String) },
})

Docs

✨ Contributors

We welcome all kinds of contributions! Read our contributing guide.

Thanks goes to these wonderful people (emoji key):


Kris Kaczor

💻 🤔 🎨 📖 🚧

Piotr Szlachciak

💻 🤔 🎨 📖 🚧

Artur Kozak

🤔

Leonid Logvinov

📖 💻

Ivan Pantic

📖

grzpab

💻 📖

Krzysztof Jelski

🤔

Rafał Krupiński

🐛 💻

Piotr Monwid-Olechnowicz

💻 📖 🚧

Earl logo by @sz-piotr

License

dΞth MIT