assertthat
Version:
assertthat provides fluent TDD.
34 lines (27 loc) • 584 B
text/typescript
import { Diff } from '../Diff';
const mapDiffSymbol: unique symbol = Symbol('map diff');
const mapDiff = function (
parameters: Omit<MapDiff, 'kind'>
): MapDiff {
return {
kind: mapDiffSymbol,
...parameters
};
};
interface MapDiff extends Diff {
kind: typeof mapDiffSymbol;
additions: Map<any, any>;
omissions: Map<any, any>;
changes: Map<any, Diff>;
equal: Map<any, any>;
}
const isMapDiff = function (diff: any): diff is MapDiff {
return 'kind' in diff && diff.kind === mapDiffSymbol;
};
export type {
MapDiff
};
export {
isMapDiff,
mapDiff
};