UNPKG

fast-check

Version:

Property based testing framework for JavaScript (like QuickCheck)

30 lines (29 loc) 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildVersionsAppliersForUuid = buildVersionsAppliersForUuid; const globals_1 = require("../../../utils/globals"); const quickNumberToHexaString = '0123456789abcdef'; function buildVersionsAppliersForUuid(versions) { const mapping = {}; const reversedMapping = {}; for (let index = 0; index !== versions.length; ++index) { const from = quickNumberToHexaString[index]; const to = quickNumberToHexaString[versions[index]]; mapping[from] = to; reversedMapping[to] = from; } function versionsApplierMapper(value) { return mapping[value[0]] + (0, globals_1.safeSubstring)(value, 1); } function versionsApplierUnmapper(value) { if (typeof value !== 'string') { throw new globals_1.Error('Cannot produce non-string values'); } const rev = reversedMapping[value[0]]; if (rev === undefined) { throw new globals_1.Error('Cannot produce strings not starting by the version in hexa code'); } return rev + (0, globals_1.safeSubstring)(value, 1); } return { versionsApplierMapper, versionsApplierUnmapper }; }