Exemplo n.º 1
0
        public unsafe void Can_Revert_Normalization()
        {
            int[] revertedNormalizationArray = new int[] { 4, 20, 200, 100, 10 };
            int   min = revertedNormalizationArray.Min();
            int   max = revertedNormalizationArray.Max();


            fixed(int *pointerToArray = &revertedNormalizationArray[0])
            {
                BitmapAdditionDllManager.Normalize(pointerToArray, revertedNormalizationArray.Length, min, max);
                BitmapAdditionDllManager.RevertNormalization(pointerToArray, revertedNormalizationArray.Length, min, max);
            }

            int[] originalArray = new int[] { 4, 20, 200, 100, 10 };

            Assert.IsTrue(Math.Abs(originalArray[0] - revertedNormalizationArray[0]) <= 1);
            Assert.IsTrue(Math.Abs(originalArray[1] - revertedNormalizationArray[1]) <= 1);
            Assert.IsTrue(Math.Abs(originalArray[2] - revertedNormalizationArray[2]) <= 1);
            Assert.IsTrue(Math.Abs(originalArray[3] - revertedNormalizationArray[3]) <= 1);
            Assert.IsTrue(Math.Abs(originalArray[4] - revertedNormalizationArray[4]) <= 1);
        }