Testing with assertions
Assertions are the spoken/written language constructs made in the code. They look and function similar to how I've been speaking about them. In fact, most tests are structured in the same way we've been describing tests:
Given some pre-conditions
When something happens
We see some post-conditions
The first two points happen as we create objects and components and call their various methods. Assertions happen in the third point. Node.js ships with a few basic assertion methods, which we can use to write our first tests:
import assert from "assert"; assert( rendered.match(/<h1 data-reactid=".*">Home<\/h1>/g) );
There are quite a few assertion methods we can use:
assert(condition), assert.ok(condition)
assert.equal(actual, expected)
assert.notEqual(actual, expected)
assert.strictEqual(actual, expected)
assert.notStrictEqual(actual, expected)
assert.deepEqual(actual, expected)
…assert.notDeepStrictEqual(actual, expected)
assert.throws(function, type)
You can add an...