commit
						bd1dc5c403
					
				| 
						 | 
				
			
			@ -1,415 +0,0 @@
 | 
			
		|||
open Jest
 | 
			
		||||
open Expect
 | 
			
		||||
 | 
			
		||||
// let PointSetDist: PointSetTypes.xyPointSetDist = {xs: [1., 4., 8.], ys: [8., 9., 2.]}
 | 
			
		||||
 | 
			
		||||
// let makeTest = (~only=false, str, item1, item2) =>
 | 
			
		||||
//   only
 | 
			
		||||
//     ? Only.test(str, () =>
 | 
			
		||||
//         expect(item1) |> toEqual(item2)
 | 
			
		||||
//       )
 | 
			
		||||
//     : test(str, () =>
 | 
			
		||||
//         expect(item1) |> toEqual(item2)
 | 
			
		||||
//       );
 | 
			
		||||
 | 
			
		||||
// let makeTestCloseEquality = (~only=false, str, item1, item2, ~digits) =>
 | 
			
		||||
//   only
 | 
			
		||||
//     ? Only.test(str, () =>
 | 
			
		||||
//         expect(item1) |> toBeSoCloseTo(item2, ~digits)
 | 
			
		||||
//       )
 | 
			
		||||
//     : test(str, () =>
 | 
			
		||||
//         expect(item1) |> toBeSoCloseTo(item2, ~digits)
 | 
			
		||||
//       );
 | 
			
		||||
 | 
			
		||||
// describe("PointSetDist", () => {
 | 
			
		||||
//   describe("Continuous", () => {
 | 
			
		||||
//     open Continuous;
 | 
			
		||||
//     let continuous = make(`Linear, PointSetDist, None);
 | 
			
		||||
//     makeTest("minX", T.minX(continuous), 1.0);
 | 
			
		||||
//     makeTest("maxX", T.maxX(continuous), 8.0);
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "mapY",
 | 
			
		||||
//       T.mapY(r => r *. 2.0, continuous) |> getPointSetDist |> (r => r.ys),
 | 
			
		||||
//       [|16., 18.0, 4.0|],
 | 
			
		||||
//     );
 | 
			
		||||
//     describe("xToY", () => {
 | 
			
		||||
//       describe("when Linear", () => {
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 4.0",
 | 
			
		||||
//           T.xToY(4., continuous),
 | 
			
		||||
//           {continuous: 9.0, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//         // Note: This below is weird to me, I'm not sure if it's what we want really.
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 0.0",
 | 
			
		||||
//           T.xToY(0., continuous),
 | 
			
		||||
//           {continuous: 8.0, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 5.0",
 | 
			
		||||
//           T.xToY(5., continuous),
 | 
			
		||||
//           {continuous: 7.25, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 10.0",
 | 
			
		||||
//           T.xToY(10., continuous),
 | 
			
		||||
//           {continuous: 2.0, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//       });
 | 
			
		||||
//       describe("when Stepwise", () => {
 | 
			
		||||
//         let continuous = make(`Stepwise, PointSetDist, None);
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 4.0",
 | 
			
		||||
//           T.xToY(4., continuous),
 | 
			
		||||
//           {continuous: 9.0, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 0.0",
 | 
			
		||||
//           T.xToY(0., continuous),
 | 
			
		||||
//           {continuous: 0.0, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 5.0",
 | 
			
		||||
//           T.xToY(5., continuous),
 | 
			
		||||
//           {continuous: 9.0, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//         makeTest(
 | 
			
		||||
//           "at 10.0",
 | 
			
		||||
//           T.xToY(10., continuous),
 | 
			
		||||
//           {continuous: 2.0, discrete: 0.0},
 | 
			
		||||
//         );
 | 
			
		||||
//       });
 | 
			
		||||
//     });
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integral",
 | 
			
		||||
//       T.Integral.get(~cache=None, continuous) |> getPointSetDist,
 | 
			
		||||
//       {xs: [|1.0, 4.0, 8.0|], ys: [|0.0, 25.5, 47.5|]},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "toLinear",
 | 
			
		||||
//       {
 | 
			
		||||
//         let continuous =
 | 
			
		||||
//           make(`Stepwise, {xs: [|1., 4., 8.|], ys: [|0.1, 5., 1.0|]}, None);
 | 
			
		||||
//         continuous |> toLinear |> E.O.fmap(getPointSetDist);
 | 
			
		||||
//       },
 | 
			
		||||
//       Some({
 | 
			
		||||
//         xs: [|1.00007, 1.00007, 4.0, 4.00007, 8.0, 8.00007|],
 | 
			
		||||
//         ys: [|0.0, 0.1, 0.1, 5.0, 5.0, 1.0|],
 | 
			
		||||
//       }),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "toLinear",
 | 
			
		||||
//       {
 | 
			
		||||
//         let continuous = make(`Stepwise, {xs: [|0.0|], ys: [|0.3|]}, None);
 | 
			
		||||
//         continuous |> toLinear |> E.O.fmap(getPointSetDist);
 | 
			
		||||
//       },
 | 
			
		||||
//       Some({xs: [|0.0|], ys: [|0.3|]}),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integralXToY",
 | 
			
		||||
//       T.Integral.xToY(~cache=None, 0.0, continuous),
 | 
			
		||||
//       0.0,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integralXToY",
 | 
			
		||||
//       T.Integral.xToY(~cache=None, 2.0, continuous),
 | 
			
		||||
//       8.5,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integralXToY",
 | 
			
		||||
//       T.Integral.xToY(~cache=None, 100.0, continuous),
 | 
			
		||||
//       47.5,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integralEndY",
 | 
			
		||||
//       continuous
 | 
			
		||||
//       |> T.normalize //scaleToIntegralSum(~intendedSum=1.0)
 | 
			
		||||
//       |> T.Integral.sum(~cache=None),
 | 
			
		||||
//       1.0,
 | 
			
		||||
//     );
 | 
			
		||||
//   });
 | 
			
		||||
 | 
			
		||||
//   describe("Discrete", () => {
 | 
			
		||||
//     open Discrete;
 | 
			
		||||
//     let PointSetDist: PointSetTypes.xyPointSetDist = {
 | 
			
		||||
//       xs: [|1., 4., 8.|],
 | 
			
		||||
//       ys: [|0.3, 0.5, 0.2|],
 | 
			
		||||
//     };
 | 
			
		||||
//     let discrete = make(PointSetDist, None);
 | 
			
		||||
//     makeTest("minX", T.minX(discrete), 1.0);
 | 
			
		||||
//     makeTest("maxX", T.maxX(discrete), 8.0);
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "mapY",
 | 
			
		||||
//       T.mapY(r => r *. 2.0, discrete) |> (r => getPointSetDist(r).ys),
 | 
			
		||||
//       [|0.6, 1.0, 0.4|],
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 4.0",
 | 
			
		||||
//       T.xToY(4., discrete),
 | 
			
		||||
//       {discrete: 0.5, continuous: 0.0},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 0.0",
 | 
			
		||||
//       T.xToY(0., discrete),
 | 
			
		||||
//       {discrete: 0.0, continuous: 0.0},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 5.0",
 | 
			
		||||
//       T.xToY(5., discrete),
 | 
			
		||||
//       {discrete: 0.0, continuous: 0.0},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "scaleBy",
 | 
			
		||||
//       scaleBy(~scale=4.0, discrete),
 | 
			
		||||
//       make({xs: [|1., 4., 8.|], ys: [|1.2, 2.0, 0.8|]}, None),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "normalize, then scale by 4.0",
 | 
			
		||||
//       discrete
 | 
			
		||||
//       |> T.normalize
 | 
			
		||||
//       |> scaleBy(~scale=4.0),
 | 
			
		||||
//       make({xs: [|1., 4., 8.|], ys: [|1.2, 2.0, 0.8|]}, None),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "scaleToIntegralSum: back and forth",
 | 
			
		||||
//       discrete
 | 
			
		||||
//       |> T.normalize
 | 
			
		||||
//       |> scaleBy(~scale=4.0)
 | 
			
		||||
//       |> T.normalize,
 | 
			
		||||
//       discrete,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integral",
 | 
			
		||||
//       T.Integral.get(~cache=None, discrete),
 | 
			
		||||
//       Continuous.make(
 | 
			
		||||
//         `Stepwise,
 | 
			
		||||
//         {xs: [|1., 4., 8.|], ys: [|0.3, 0.8, 1.0|]},
 | 
			
		||||
//         None
 | 
			
		||||
//       ),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integral with 1 element",
 | 
			
		||||
//       T.Integral.get(~cache=None, Discrete.make({xs: [|0.0|], ys: [|1.0|]}, None)),
 | 
			
		||||
//       Continuous.make(`Stepwise, {xs: [|0.0|], ys: [|1.0|]}, None),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integralXToY",
 | 
			
		||||
//       T.Integral.xToY(~cache=None, 6.0, discrete),
 | 
			
		||||
//       0.9,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest("integralEndY", T.Integral.sum(~cache=None, discrete), 1.0);
 | 
			
		||||
//     makeTest("mean", T.mean(discrete), 3.9);
 | 
			
		||||
//     makeTestCloseEquality(
 | 
			
		||||
//       "variance",
 | 
			
		||||
//       T.variance(discrete),
 | 
			
		||||
//       5.89,
 | 
			
		||||
//       ~digits=7,
 | 
			
		||||
//     );
 | 
			
		||||
//   });
 | 
			
		||||
 | 
			
		||||
//   describe("Mixed", () => {
 | 
			
		||||
//     open Distributions.Mixed;
 | 
			
		||||
//     let discretePointSetDist: PointSetTypes.xyPointSetDist = {
 | 
			
		||||
//       xs: [|1., 4., 8.|],
 | 
			
		||||
//       ys: [|0.3, 0.5, 0.2|],
 | 
			
		||||
//     };
 | 
			
		||||
//     let discrete = Discrete.make(discretePointSetDist, None);
 | 
			
		||||
//     let continuous =
 | 
			
		||||
//       Continuous.make(
 | 
			
		||||
//         `Linear,
 | 
			
		||||
//         {xs: [|3., 7., 14.|], ys: [|0.058, 0.082, 0.124|]},
 | 
			
		||||
//         None
 | 
			
		||||
//       )
 | 
			
		||||
//       |> Continuous.T.normalize; //scaleToIntegralSum(~intendedSum=1.0);
 | 
			
		||||
//     let mixed = Mixed.make(
 | 
			
		||||
//         ~continuous,
 | 
			
		||||
//         ~discrete,
 | 
			
		||||
//       );
 | 
			
		||||
//     makeTest("minX", T.minX(mixed), 1.0);
 | 
			
		||||
//     makeTest("maxX", T.maxX(mixed), 14.0);
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "mapY",
 | 
			
		||||
//       T.mapY(r => r *. 2.0, mixed),
 | 
			
		||||
//       Mixed.make(
 | 
			
		||||
//         ~continuous=
 | 
			
		||||
//           Continuous.make(
 | 
			
		||||
//             `Linear,
 | 
			
		||||
//             {
 | 
			
		||||
//               xs: [|3., 7., 14.|],
 | 
			
		||||
//               ys: [|
 | 
			
		||||
//                 0.11588411588411589,
 | 
			
		||||
//                 0.16383616383616384,
 | 
			
		||||
//                 0.24775224775224775,
 | 
			
		||||
//               |],
 | 
			
		||||
//             },
 | 
			
		||||
//             None
 | 
			
		||||
//           ),
 | 
			
		||||
//         ~discrete=Discrete.make({xs: [|1., 4., 8.|], ys: [|0.6, 1.0, 0.4|]}, None)
 | 
			
		||||
//       ),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 4.0",
 | 
			
		||||
//       T.xToY(4., mixed),
 | 
			
		||||
//       {discrete: 0.25, continuous: 0.03196803196803197},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 0.0",
 | 
			
		||||
//       T.xToY(0., mixed),
 | 
			
		||||
//       {discrete: 0.0, continuous: 0.028971028971028972},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 5.0",
 | 
			
		||||
//       T.xToY(7., mixed),
 | 
			
		||||
//       {discrete: 0.0, continuous: 0.04095904095904096},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest("integralEndY", T.Integral.sum(~cache=None, mixed), 1.0);
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "scaleBy",
 | 
			
		||||
//       Mixed.scaleBy(~scale=2.0, mixed),
 | 
			
		||||
//       Mixed.make(
 | 
			
		||||
//         ~continuous=
 | 
			
		||||
//           Continuous.make(
 | 
			
		||||
//             `Linear,
 | 
			
		||||
//             {
 | 
			
		||||
//               xs: [|3., 7., 14.|],
 | 
			
		||||
//               ys: [|
 | 
			
		||||
//                 0.11588411588411589,
 | 
			
		||||
//                 0.16383616383616384,
 | 
			
		||||
//                 0.24775224775224775,
 | 
			
		||||
//               |],
 | 
			
		||||
//             },
 | 
			
		||||
//             None
 | 
			
		||||
//           ),
 | 
			
		||||
//         ~discrete=Discrete.make({xs: [|1., 4., 8.|], ys: [|0.6, 1.0, 0.4|]}, None),
 | 
			
		||||
//       ),
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integral",
 | 
			
		||||
//       T.Integral.get(~cache=None, mixed),
 | 
			
		||||
//       Continuous.make(
 | 
			
		||||
//         `Linear,
 | 
			
		||||
//         {
 | 
			
		||||
//           xs: [|1.00007, 1.00007, 3., 4., 4.00007, 7., 8., 8.00007, 14.|],
 | 
			
		||||
//           ys: [|
 | 
			
		||||
//             0.0,
 | 
			
		||||
//             0.0,
 | 
			
		||||
//             0.15,
 | 
			
		||||
//             0.18496503496503497,
 | 
			
		||||
//             0.4349674825174825,
 | 
			
		||||
//             0.5398601398601399,
 | 
			
		||||
//             0.5913086913086913,
 | 
			
		||||
//             0.6913122927072927,
 | 
			
		||||
//             1.0,
 | 
			
		||||
//           |],
 | 
			
		||||
//       },
 | 
			
		||||
//       None,
 | 
			
		||||
//       ),
 | 
			
		||||
//     );
 | 
			
		||||
//   });
 | 
			
		||||
 | 
			
		||||
//   describe("Distplus", () => {
 | 
			
		||||
//     open DistPlus;
 | 
			
		||||
//     let discretePointSetDist: PointSetTypes.xyPointSetDist = {
 | 
			
		||||
//       xs: [|1., 4., 8.|],
 | 
			
		||||
//       ys: [|0.3, 0.5, 0.2|],
 | 
			
		||||
//     };
 | 
			
		||||
//     let discrete = Discrete.make(discretePointSetDist, None);
 | 
			
		||||
//     let continuous =
 | 
			
		||||
//       Continuous.make(
 | 
			
		||||
//         `Linear,
 | 
			
		||||
//         {xs: [|3., 7., 14.|], ys: [|0.058, 0.082, 0.124|]},
 | 
			
		||||
//         None
 | 
			
		||||
//       )
 | 
			
		||||
//       |> Continuous.T.normalize; //scaleToIntegralSum(~intendedSum=1.0);
 | 
			
		||||
//     let mixed =
 | 
			
		||||
//       Mixed.make(
 | 
			
		||||
//         ~continuous,
 | 
			
		||||
//         ~discrete,
 | 
			
		||||
//       );
 | 
			
		||||
//     let distPlus =
 | 
			
		||||
//       DistPlus.make(
 | 
			
		||||
//         ~PointSetDist=Mixed(mixed),
 | 
			
		||||
//         ~squiggleString=None,
 | 
			
		||||
//         (),
 | 
			
		||||
//       );
 | 
			
		||||
//     makeTest("minX", T.minX(distPlus), 1.0);
 | 
			
		||||
//     makeTest("maxX", T.maxX(distPlus), 14.0);
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 4.0",
 | 
			
		||||
//       T.xToY(4., distPlus),
 | 
			
		||||
//       {discrete: 0.25, continuous: 0.03196803196803197},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 0.0",
 | 
			
		||||
//       T.xToY(0., distPlus),
 | 
			
		||||
//       {discrete: 0.0, continuous: 0.028971028971028972},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "xToY at 5.0",
 | 
			
		||||
//       T.xToY(7., distPlus),
 | 
			
		||||
//       {discrete: 0.0, continuous: 0.04095904095904096},
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTest("integralEndY", T.Integral.sum(~cache=None, distPlus), 1.0);
 | 
			
		||||
//     makeTest(
 | 
			
		||||
//       "integral",
 | 
			
		||||
//       T.Integral.get(~cache=None, distPlus) |> T.toContinuous,
 | 
			
		||||
//       Some(
 | 
			
		||||
//         Continuous.make(
 | 
			
		||||
//           `Linear,
 | 
			
		||||
//           {
 | 
			
		||||
//             xs: [|1.00007, 1.00007, 3., 4., 4.00007, 7., 8., 8.00007, 14.|],
 | 
			
		||||
//             ys: [|
 | 
			
		||||
//               0.0,
 | 
			
		||||
//               0.0,
 | 
			
		||||
//               0.15,
 | 
			
		||||
//               0.18496503496503497,
 | 
			
		||||
//               0.4349674825174825,
 | 
			
		||||
//               0.5398601398601399,
 | 
			
		||||
//               0.5913086913086913,
 | 
			
		||||
//               0.6913122927072927,
 | 
			
		||||
//               1.0,
 | 
			
		||||
//             |],
 | 
			
		||||
//           },
 | 
			
		||||
//           None,
 | 
			
		||||
//         ),
 | 
			
		||||
//       ),
 | 
			
		||||
//     );
 | 
			
		||||
//   });
 | 
			
		||||
 | 
			
		||||
//   describe("PointSetDist", () => {
 | 
			
		||||
//     let mean = 10.0;
 | 
			
		||||
//     let stdev = 4.0;
 | 
			
		||||
//     let variance = stdev ** 2.0;
 | 
			
		||||
//     let numSamples = 10000;
 | 
			
		||||
//     open Distributions.PointSetDist;
 | 
			
		||||
//     let normal: SymbolicDistTypes.symbolicDist = `Normal({mean, stdev});
 | 
			
		||||
//     let normalPointSetDist = AST.toPointSetDist(numSamples, `SymbolicDist(normal));
 | 
			
		||||
//     let lognormal = SymbolicDist.Lognormal.fromMeanAndStdev(mean, stdev);
 | 
			
		||||
//     let lognormalPointSetDist = AST.toPointSetDist(numSamples, `SymbolicDist(lognormal));
 | 
			
		||||
 | 
			
		||||
//     makeTestCloseEquality(
 | 
			
		||||
//       "Mean of a normal",
 | 
			
		||||
//       T.mean(normalPointSetDist),
 | 
			
		||||
//       mean,
 | 
			
		||||
//       ~digits=2,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTestCloseEquality(
 | 
			
		||||
//       "Variance of a normal",
 | 
			
		||||
//       T.variance(normalPointSetDist),
 | 
			
		||||
//       variance,
 | 
			
		||||
//       ~digits=1,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTestCloseEquality(
 | 
			
		||||
//       "Mean of a lognormal",
 | 
			
		||||
//       T.mean(lognormalPointSetDist),
 | 
			
		||||
//       mean,
 | 
			
		||||
//       ~digits=2,
 | 
			
		||||
//     );
 | 
			
		||||
//     makeTestCloseEquality(
 | 
			
		||||
//       "Variance of a lognormal",
 | 
			
		||||
//       T.variance(lognormalPointSetDist),
 | 
			
		||||
//       variance,
 | 
			
		||||
//       ~digits=0,
 | 
			
		||||
//     );
 | 
			
		||||
//   });
 | 
			
		||||
// });
 | 
			
		||||
| 
						 | 
				
			
			@ -1,57 +0,0 @@
 | 
			
		|||
open Jest
 | 
			
		||||
open Expect
 | 
			
		||||
/*
 | 
			
		||||
let makeTest = (~only=false, str, item1, item2) =>
 | 
			
		||||
  only
 | 
			
		||||
    ? Only.test(str, () =>
 | 
			
		||||
        expect(item1) |> toEqual(item2)
 | 
			
		||||
      )
 | 
			
		||||
    : test(str, () =>
 | 
			
		||||
        expect(item1) |> toEqual(item2)
 | 
			
		||||
      );
 | 
			
		||||
 | 
			
		||||
let evalParams: ASTTypes.AST.evaluationParams = {
 | 
			
		||||
  samplingInputs: {
 | 
			
		||||
    sampleCount: 1000,
 | 
			
		||||
    outputXYPoints: 10000,
 | 
			
		||||
    kernelWidth: None,
 | 
			
		||||
    PointSetDistLength: 1000,
 | 
			
		||||
  },
 | 
			
		||||
  environment:
 | 
			
		||||
    [|
 | 
			
		||||
      ("K", `SymbolicDist(`Float(1000.0))),
 | 
			
		||||
      ("M", `SymbolicDist(`Float(1000000.0))),
 | 
			
		||||
      ("B", `SymbolicDist(`Float(1000000000.0))),
 | 
			
		||||
      ("T", `SymbolicDist(`Float(1000000000000.0))),
 | 
			
		||||
    |]
 | 
			
		||||
    ->Belt.Map.String.fromArray,
 | 
			
		||||
  evaluateNode: ASTEvaluator.toLeaf,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
let PointSetDist1: PointSetTypes.xyPointSetDist = {xs: [|1., 4., 8.|], ys: [|0.2, 0.4, 0.8|]};
 | 
			
		||||
 | 
			
		||||
describe("XYPointSetDists", () => {
 | 
			
		||||
  describe("logScorePoint", () => {
 | 
			
		||||
    makeTest(
 | 
			
		||||
      "When identical",
 | 
			
		||||
      {
 | 
			
		||||
        let foo =
 | 
			
		||||
          HardcodedFunctions.(
 | 
			
		||||
            makeRenderedDistFloat("scaleMultiply", (dist, float) =>
 | 
			
		||||
              verticalScaling(`Multiply, dist, float)
 | 
			
		||||
            )
 | 
			
		||||
          );
 | 
			
		||||
 | 
			
		||||
        TypeSystem.Function.T.run(
 | 
			
		||||
          evalParams,
 | 
			
		||||
          [|
 | 
			
		||||
            `SymbolicDist(`Float(100.0)),
 | 
			
		||||
            `SymbolicDist(`Float(1.0)),
 | 
			
		||||
          |],
 | 
			
		||||
          foo,
 | 
			
		||||
        );
 | 
			
		||||
      },
 | 
			
		||||
      Error("Sad"),
 | 
			
		||||
    )
 | 
			
		||||
  })
 | 
			
		||||
}); */
 | 
			
		||||
| 
						 | 
				
			
			@ -1,12 +0,0 @@
 | 
			
		|||
var js = require("../src/js/index.js");
 | 
			
		||||
 | 
			
		||||
describe("A simple result", () => {
 | 
			
		||||
    test("mean(normal(5,2))", () => {
 | 
			
		||||
        expect(js.run("mean(normal(5,2))")).toEqual({ tag: 'Ok', value: { hd: { NAME: 'Float', VAL: 5 }, tl: 0 } });
 | 
			
		||||
    });
 | 
			
		||||
    test("10+10", () => {
 | 
			
		||||
        let foo = js.run("normal(5,2)");
 | 
			
		||||
        console.log(foo.value.hd.VAL)
 | 
			
		||||
        expect(1).toEqual(1);
 | 
			
		||||
    });
 | 
			
		||||
});
 | 
			
		||||
							
								
								
									
										11
									
								
								packages/squiggle-lang/__tests__/JS__Test.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								packages/squiggle-lang/__tests__/JS__Test.ts
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
import { run } from '../src/js/index';
 | 
			
		||||
 | 
			
		||||
describe("A simple result", () => {
 | 
			
		||||
    test("mean(normal(5,2))", () => {
 | 
			
		||||
        expect(run("mean(normal(5,2))")).toEqual({ tag: 'Ok', value: {hd: { NAME: 'Float', VAL: 5  }, tl: 0} });
 | 
			
		||||
    });
 | 
			
		||||
    test("10+10", () => {
 | 
			
		||||
        let foo = run("normal(5,2)");
 | 
			
		||||
        expect(1).toEqual(1);
 | 
			
		||||
    });
 | 
			
		||||
});
 | 
			
		||||
							
								
								
									
										5
									
								
								packages/squiggle-lang/jest.config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								packages/squiggle-lang/jest.config.js
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
 | 
			
		||||
module.exports = {
 | 
			
		||||
  preset: 'ts-jest',
 | 
			
		||||
  testEnvironment: 'node',
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										48769
									
								
								packages/squiggle-lang/package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										48769
									
								
								packages/squiggle-lang/package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| 
						 | 
				
			
			@ -29,13 +29,16 @@
 | 
			
		|||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
    "@glennsl/rescript-jest": "^0.9.0",
 | 
			
		||||
    "@types/jest": "^27.4.0",
 | 
			
		||||
    "docsify": "^4.12.2",
 | 
			
		||||
    "gentype": "^4.3.0",
 | 
			
		||||
    "jest": "^25.5.1",
 | 
			
		||||
    "jest": "^27.5.1",
 | 
			
		||||
    "jstat": "1.9.2",
 | 
			
		||||
    "moduleserve": "0.9.1",
 | 
			
		||||
    "parcel": "^2.2.1",
 | 
			
		||||
    "parcel-bundler": "1.12.4",
 | 
			
		||||
    "rescript": "^9.1.4"
 | 
			
		||||
    "rescript": "^9.1.4",
 | 
			
		||||
    "ts-jest": "^27.1.3",
 | 
			
		||||
    "typescript": "^4.5.5"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +0,0 @@
 | 
			
		|||
const ProgramEvaluator = require('../rescript/ProgramEvaluator.gen.js');
 | 
			
		||||
 | 
			
		||||
exports.run = ProgramEvaluator.runAll
 | 
			
		||||
							
								
								
									
										1
									
								
								packages/squiggle-lang/src/js/index.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								packages/squiggle-lang/src/js/index.ts
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
export {runAll as run} from '../rescript/ProgramEvaluator.gen'
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user