index.js (1384B)
1 import { distributions, generateInt, generateFloatRange, } from "./generators.js"; 2 import { test, expectEqual } from "./lib.js"; 3 const checkDistributionSame = async (distribution, operation) => { 4 await expectEqual(operation(distribution), operation(`PointSet.fromDist(${distribution})`)); 5 await expectEqual(operation(distribution), operation(`SampleSet.fromDist(${distribution})`)); 6 }; 7 Object.entries(distributions).map(([key, generator]) => { 8 const distribution = generator(); 9 test(`mean is the same for ${key} distribution under all distribution types`, async () => await checkDistributionSame(distribution, (d) => `mean(${d})`)); 10 test(`cdf is the same for ${key} distribution under all distribution types`, async () => { 11 const cdf_value = generateInt(); 12 await checkDistributionSame(distribution, (d) => `cdf(${d}, ${cdf_value})`); 13 }); 14 test(`pdf is the same for ${key} distribution under all distribution types`, async () => { 15 const pdf_value = generateInt(); 16 await checkDistributionSame(distribution, (d) => `pdf(${d}, ${pdf_value})`); 17 }); 18 test(`inv is the same for ${key} distribution under all distribution types`, async () => { 19 const inv_value = generateFloatRange(0, 1); 20 await checkDistributionSame(distribution, (d) => `inv(${d}, ${inv_value})`); 21 }); 22 }); 23 //# sourceMappingURL=index.js.map