UNPKG

fast-check

Version:

Property based testing framework for JavaScript (like QuickCheck)

20 lines (19 loc) 776 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.map = map; const tuple_1 = require("./tuple"); const uniqueArray_1 = require("./uniqueArray"); const ArrayToMap_1 = require("./_internals/mappers/ArrayToMap"); function mapKeyExtractor(entry) { return entry[0]; } /**@__NO_SIDE_EFFECTS__*/function map(keyArb, valueArb, constraints = {}) { return (0, uniqueArray_1.uniqueArray)((0, tuple_1.tuple)(keyArb, valueArb), { minLength: constraints.minKeys, maxLength: constraints.maxKeys, size: constraints.size, selector: mapKeyExtractor, depthIdentifier: constraints.depthIdentifier, comparator: 'SameValueZero', }).map(ArrayToMap_1.arrayToMapMapper, ArrayToMap_1.arrayToMapUnmapper); }