private void ValidateMinMaxFunction(MinMaxFunc minMaxFunc)
        {
            foreach (var testSetSize in new[] { smallTestSet, hdImageSize })
            {
                var testDataSet = GetRandomIntArray(testSetSize);
                var expectedMin = testDataSet.Min();
                var expectedMax = testDataSet.Max();

                int calculatedMin, calculatedMax;
                minMaxFunc(testDataSet, out calculatedMin, out calculatedMax);

                Assert.AreEqual(expectedMin, calculatedMin);
                Assert.AreEqual(expectedMax, calculatedMax);
            }
        }
        private void ValidateMinMaxFunction(MinMaxFunc minMaxFunc)
        {
            foreach (var testSetSize in new[] { smallTestSet, hdImageSize })
            {
                var testDataSet = GetRandomUShortArray(testSetSize);
                var expectedMin = testDataSet.Min();
                var expectedMax = testDataSet.Max();

                ushort calculatedMin, calculatedMax;
                minMaxFunc(testDataSet, out calculatedMin, out calculatedMax);

                Assert.AreEqual(expectedMin, calculatedMin, $"Failed to calculate mininum for {nameof(smallTestSet)}");
                Assert.AreEqual(expectedMax, calculatedMax, $"Failed to calculate maximum for {nameof(smallTestSet)}");
            }
        }