https://github.com/testingrequired/lazy-assert
https://github.com/testingrequired/lazy-assert
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/testingrequired/lazy-assert
- Owner: testingrequired
- Created: 2019-08-17T16:31:00.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-04T07:27:14.000Z (about 3 years ago)
- Last Synced: 2025-01-22T06:28:15.379Z (about 1 year ago)
- Language: JavaScript
- Size: 488 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# @testingrequired/lazy-assert
A lazy wrapper around Node's `assert` module.
## Install
```bash
$ npm i -D @testingrequired/lazy-assert
```
## Usage
```javascript
import assert from "@testingrequired/lazy-assert";
assert(1 === 2, "They don't equal"); // Returns a function
assert(1 === 2, "They don't equal")(); // Runs assertion
```
## Why?
Lazy assertions are essential for building something like multi assert assertions.
```javascript
import assert from "@testingrequired/lazy-assert";
const point = {
y: 10
};
// Creating assertions doesn't run them
const asserts = [
assert(point.x, "x not defined", assert(point.y, "y not defined"))
];
// Some multi assert implementation
multiAssert(...asserts, "Something is wrong");
```