jest-expect-contain-deep

1.0.1 • Public • Published

jest-expect-contain-deep

Assert deeply nested values in Jest

Installation

yarn add --dev jest-expect-contain-deep

Usage

Before:

const containDeep = require('jest-expect-contain-deep');
 
test('values', () => {
  let massiveObject = getMassiveObject();
  expect(massiveObject.foo).toBe(expect.arrayContaining([1, 2]));
  expect(massiveObject.bar.prop).toBe(true);
  expect(massiveObject.baz).toContain('bar');
});
 
test('spies', () => {
  doSomething();
  expect(mySpy.mock.calls[0][0].foo).toBe(expect.arrayContaining([1, 2]));
  expect(mySpy.mock.calls[0][0].bar.prop).toBe(true);
  expect(mySpy.mock.calls[0][0].baz).toContain('bar');
});

After:

const containDeep = require('jest-expect-contain-deep');
 
test('values', () => {
  expect(getMassiveObject()).toEqual(containDeep({
    foo: [1, 2],
    bar: { prop: true },
    baz: expect.stringContaining('bar'),
  }));
});
 
test('spies', () => {
  doSomething();
  expect(mySpy).toHaveBeenCalledWith('arg1', containDeep({
    foo: [1, 2],
    bar: { prop: true },
    baz: expect.stringContaining('bar'),
  }));
});

Readme

Keywords

Package Sidebar

Install

npm i jest-expect-contain-deep

Weekly Downloads

100

Version

1.0.1

License

MIT

Last publish

Collaborators

  • thejameskyle