UNPKG

@alexjeffburke/unexpected-react

Version:

Plugin for unexpected, to allow for assertions on the React.js virtual DOM, and the shallow and test renderers

38 lines (26 loc) 1.75 kB
'use strict'; var _snapshots = require('../helpers/snapshots'); var _testRendererAgainstRawAssertions = require('./testRendererAgainstRawAssertions'); var _unexpectedHtmllikeTestrendererAdapter = require('unexpected-htmllike-testrenderer-adapter'); var _unexpectedHtmllikeTestrendererAdapter2 = _interopRequireDefault(_unexpectedHtmllikeTestrendererAdapter); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function installInto(expect) { var reactTestAdapter = new _unexpectedHtmllikeTestrendererAdapter2.default({ convertToString: true, concatStringContent: true }); expect.addAssertion('<ReactTestRenderer> to match snapshot', function (expect, subject) { (0, _snapshots.compareSnapshot)(expect, {}, reactTestAdapter, subject, subject.toJSON()); }); expect.addAssertion('<ReactTestRendererPendingEvent> to match snapshot', function (expect, subject) { (0, _testRendererAgainstRawAssertions.triggerEvent)(expect, subject.renderer, subject.target, subject.eventName, subject.eventArgs); expect.errorMode = 'bubble'; expect(subject.renderer, 'to match snapshot'); }); expect.addAssertion('<ReactTestRenderer> to satisfy snapshot', function (expect, subject) { (0, _snapshots.compareSnapshot)(expect, { satisfy: true }, reactTestAdapter, subject, subject.toJSON()); }); expect.addAssertion('<ReactTestRendererPendingEvent> to satisfy snapshot', function (expect, subject) { (0, _testRendererAgainstRawAssertions.triggerEvent)(expect, subject.renderer, subject.target, subject.eventName, subject.eventArgs); expect.errorMode = 'bubble'; expect(subject.renderer, 'to satisfy snapshot'); }); } module.exports = { installInto: installInto };