public void TransformTest()
        {
            var dwht   = new DiscreteWalshHadamardTransform();
            var fwht   = new FastWalshHadamardTransform();
            var points = new List <double>(new double[] { 1, 2, 1, 2, 1, 3, 1, 5, 1, 1, 1, 8, 2, 1, 3, 4 });
            var r1     = dwht.Transform(points.Select(d => new Point(0, d)).ToArray()).ToArray();
            var r2     = fwht.Transform(points.Select(d => new Point(0, d)).ToArray()).ToArray();

            for (var i = 0; i < 16; i++)
            {
                Assert.AreEqual(r1[i], r2[i]);
            }
        }
        public void TransformTest()
        {
            var r          = new Random();
            var transformD = new DiscreteWalshHadamardTransform();
            var transformF = new FastWalshHadamardTransform();

            var points = new List <Point>();

            for (int i = 0; i < 256; i++)
            {
                points.Add(new Point(i, r.Next()));
            }

            var first  = transformD.Transform(points.ToArray()).ToList();
            var second = transformF.Transform(points.ToArray()).ToList();

            for (int i = 0; i < first.Count; i++)
            {
                Assert.AreEqual(first[i], second[i]);
            }
        }