UNPKG

fast-check

Version:

Property based testing framework for JavaScript (like QuickCheck)

19 lines (18 loc) 665 B
import { buildCharacterArbitrary } from './_internals/builders/CharacterArbitraryBuilder.js'; import { indexToPrintableIndexMapper, indexToPrintableIndexUnmapper } from './_internals/mappers/IndexToPrintableIndex.js'; const gapSize = 0xdfff + 1 - 0xd800; function unicodeMapper(v) { if (v < 0xd800) return indexToPrintableIndexMapper(v); return v + gapSize; } function unicodeUnmapper(v) { if (v < 0xd800) return indexToPrintableIndexUnmapper(v); if (v <= 0xdfff) return -1; return v - gapSize; } export function unicode() { return buildCharacterArbitrary(0x0000, 0xffff - gapSize, unicodeMapper, unicodeUnmapper); }