Package Exports
- assert-json-equal
- assert-json-equal/lib/assert-json-equal.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (assert-json-equal) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
assert-json-equal
assert.deepStrictEqual for JSON object.
assert-json-equal provide a assertJsonEqual function.
assert.deepStrictEqual discriminate undefined value and missing property.
const a = {};
const b = {
undef: undefined
};
assert.throws(() => {
assert.deepStrictEqual(a, b); // => throw
});assertJsonEqual does not discriminate undefined value and missing property.
It is useful for comparing JSON objects.
import { assertJsonEqual } from "assert-json-equal"
const a = {};
const b = {
undef: undefined
};
assertJsonEqual(a, b); // => passInstall
Install with npm:
npm install assert-json-equalUsage
/**
* `assert.deepStrictEqual` for JSON object.
* Same API with `assert.deepStrictEqual(a, b, [message])`
*/
export declare const assertJsonEqual: (actual: any, expected: any, message?: string | Error | undefined) => void;Mechanism
Serialize and Deserialize object with JSON before compare objects with assert.deepStrictEqual.
import assert from "assert";
const normalizeJSON = <T extends any>(json: T) => {
return JSON.parse(JSON.stringify(json));
};
/**
* `assert.deepStrictEqual` for JSON object.
* Same API with `assert.deepStrictEqual(a, b, [message])`
* @param actual
* @param expected
* @param message
*/
export const assertJsonEqual = (actual: any, expected: any, message?: string | Error) => {
assert.deepStrictEqual(normalizeJSON(actual), normalizeJSON(expected), message);
}Changelog
See Releases page.
Running tests
Install devDependencies and Run npm test:
npm testContributing
Pull requests and stars are always welcome.
For bugs and feature requests, please create an issue.
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature - Commit your changes:
git commit -am 'Add some feature' - Push to the branch:
git push origin my-new-feature - Submit a pull request :D
Author
License
MIT © azu