1import { describe, bench } from 'vitest'; 2 3import { calculateSteps, rand, useRNG } from '../index.mjs'; 4 5const testingResolution = 128; 6 7const _generateRandomPattern = () => rand.iter(testingResolution).fast(testingResolution).firstCycle(); 8 9describe('old random', () => { 10 calculateSteps(true); 11 bench( 12 '+tactus', 13 () => { 14 useRNG('legacy'); 15 _generateRandomPattern(); 16 }, 17 { 18 time: 1000, 19 teardown() { 20 useRNG('legacy'); 21 }, 22 }, 23 ); 24 25 calculateSteps(false); 26 bench( 27 '-tactus', 28 () => { 29 useRNG('precise'); 30 _generateRandomPattern(); 31 }, 32 { 33 time: 1000, 34 teardown() { 35 useRNG('legacy'); 36 }, 37 }, 38 ); 39}); 40 41describe('random', () => { 42 calculateSteps(true); 43 bench('+tactus', _generateRandomPattern, { time: 1000 }); 44 45 calculateSteps(false); 46 bench('-tactus', _generateRandomPattern, { time: 1000 }); 47}); 48 49calculateSteps(true);