[](https://badge.fury.io/js/@dazl%2Fmostly-equal) [@dazl/mostly-equal on Github](https://github.com/dazl-dev/core3-utils/tree/main/packages/mostly-equal)
npm install @dazl/mostly-equal
@dazl/mostly-equal on Github
Adds chai matches for partial equality of JSONs
``ts``
import * as chai from 'chai';
import { expect } from 'chai';
import { mostlyEqlChaiPlugin, notImportant } from '@dazl/mostly-equal';
chai.use(mostlyEqlChaiPlugin);
expect({ a: 1 }).to.mostlyEqual({
a: 1,
b: notImportant,
});
| Function | Description |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| allowMarkersInFactory(f) | |
| checkExpectValues(input, formatters) | |
| clearMatchedValues(subMatcher) | |
| defineSame(name, skipUndefined) | Creates a symbol for usage in mostlyEqual, Comparing the resulting value in any place it is used as the value |
| defineUnique(name, skipUndefined) | Creates a symbol for usage in expect.mostlyEqual, Comparing the resulting value in any place it is used as the value |
| equal(value, thumbsUpOnSuccess) | Strict equality of a field |
| errorString(expected, actual, maxDepth, formatters, depth, path, passedMap, passedSet) | |
| expectValue(expectMethod) | Used for adding field matchers to mostlyEqual Creates a symbol used for field matching |
| expectValues(expectMethod, allowUndefined) | Similar to expectValue(), but called for all the matches at once. This way a matcher can compare different values defineUnique() |
| getMatchedValues(expectValues) | |
| HTMLFormatter(Element) | |
| isExpectVal(val) | |
| isExpectValues(val) | |
| isGetter(target, key) | |
| isPlainObj(value) | |
| printPath(p) | |
| registerChildSet(target, path, passedMap, passedSet) | |
| safePrint(target, maxDepth, formatters, depth, passedMap, passedSet, path) | |
| setGlobalOptions(maxDepth, formatters) | |
| setSuiteOptions(before, after, options) | |
| spaces(indent) | |
| Interface | Description |
| -------------------------------------------------------------------------------------------- | ----------- |
| ExpectValue | |
| ExpectValues | |
| ExpectValuesInfo | |
| Formatter | |
| MostlyEqualOptions | |
| PseudoElement | |
| Variable | Description |
| ---------------------------------------------------------------------------------------------- | ------------------------------------------------- |
| defined | Field must be defined (null is considered define) |
| expectValuesSymb | |
| expectValueSymb | |
| mostlyEqlChaiPlugin | |
| notImportant | |
| thumbsUp | |
| Type Alias | Description |
| -------------------------------------------------------------------------------------------------------- | ----------- |
| AllowMarkers | |
| AllowMarkersObj | |
| ErrorOrText | |
| ErrorOrTextOrExpect | |
| ExpandedValues | |
| ExpectMultiMatcher | |
| ExpectSingleMatcher | |
| LookupPath | |
| MarkerSymbol | |
| PseudoElementConstructor | |
| UnknownObjectRecord | |