https://github.com/oprogramador/chai-subset-in-order
"containSubsetInOrder" object properties matcher for Chai
https://github.com/oprogramador/chai-subset-in-order
Last synced: 9 months ago
JSON representation
"containSubsetInOrder" object properties matcher for Chai
- Host: GitHub
- URL: https://github.com/oprogramador/chai-subset-in-order
- Owner: oprogramador
- License: mit
- Fork: true (debitoor/chai-subset)
- Created: 2016-10-22T11:14:18.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2025-01-11T10:00:25.000Z (over 1 year ago)
- Last Synced: 2025-01-21T14:43:48.447Z (over 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 154 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://opensource.org/licenses/MIT)
[](https://travis-ci.com/oprogramador/chai-subset-in-order)
[](https://npmjs.org/package/chai-subset-in-order)
"containSubsetInOrder" object properties matcher for [Chai](http://chaijs.com/) assertion library
It works in similar way as [chai-subset](https://www.npmjs.com/package/chai-subset).
However in arrays it must be the same order to pass an assertion.
Installation
===========
`npm install --save-dev chai-subset-in-order`
Usage
=====
```js
const chai = require('chai');
const chaiSubsetInOrder = require('chai-subset-in-order');
chai.use(chaiSubsetInOrder);
const expect = chai.expect;
expect({ foo: 2, bar: 3 }).to.containSubsetInOrder({ foo: 2 });
expect({ foo: 2, bar: 3 }).to.containSubsetInOrder({ bar: 3 });
expect({ foo: 2, bar: 3 }).to.containSubsetInOrder({ foo:2, bar: 3 });
expect({ foo: 2, bar: 3 }).to.not.containSubsetInOrder({ foo: 5 });
expect([{ foo: 123, bar: 456 }, { baz: 111 }]).to.containSubsetInOrder([{ foo: 123 }]);
expect([{ foo: 123, bar: 456 }, { baz: 111 }]).to.containSubsetInOrder([{ bar: 456 }]);
expect([{ foo: 123, bar: 456 }, { baz: 111 }]).to.containSubsetInOrder([{ foo: 123 }, { baz: 111 }]);
expect([{ foo: 123, bar: 456 }, { baz: 111 }]).to.not.containSubsetInOrder([{ baz: 111 }, { foo: 123 }]);
```