assert-snapshot

1.0.1 • Public • Published

assert-snapshot stability

npm version build status downloads js-standard-style

Snapshot UI testing for tape tests. Inspired by Jest snapshot testing, but implemented as a module instead of a custom runtime.

Usage

var snap = require('assert-snapshot')
var tape = require('tape')
var html = require('bel')
 
tape('my cool component', function (assert) {
  var str = myComponent().toString()
  snap(assert, str)
  assert.end()
})
 
function myComponent () {
  return html`
    <section>
      Hello planet
    </section>
  `
}

Outputs

TAP version 13
# my cool component
ok 1 snapshot found for "my cool component"
ok 2 <section>
ok 3 ·· Hello planet
ok 4 </section>
 
1..4
# tests 4
# pass  4
 
# ok
 

Updating snapshots

By default no snapshot is saved. Set the UPDATE_SNAPSHOT=true env variable to update the snapshot and save it to snapshot.json. Each snapshot is saved using the name of the test as the key, so make sure test names are unique.

$ UPDATE_SNAPSHOT=true node example.js

API

snapshot(assert, html, [cache])

Assert a string of HTML using a custom assert function. Takes an optional cache object that contains the expected values. Use this if snapshot tests become I/O bound.

See Also

License

MIT

Package Sidebar

Install

npm i assert-snapshot

Weekly Downloads

48

Version

1.0.1

License

MIT

Last publish

Collaborators

  • yoshuawuyts