public void KernelIndiciesTest()
{
var kernelA = new double[] {3, 4, 5};
var kernelB = new double[] {4, 0, 4};
var actualA = Utility.GetKernelIndicies(kernelA, 4);
var actualB = Utility.GetKernelIndicies(kernelB, -1);
var expectedA = new double[] {4, 5, 6};
var expectedB = new double[] {-1, 0, 1};
Assert.IsTrue(expectedA.Length == actualA.Length);
Assert.IsTrue(expectedB.Length == actualB.Length);
// Check equality for A
for (int ii = 0; ii < kernelA.Length; ii++)
{
Assert.IsTrue(Math.Abs(expectedA[ii] - actualA[ii]) < 0.001);
}
// Check equality for B
for (int ii = 0; ii < kernelA.Length; ii++)
{
Assert.IsTrue(Math.Abs(expectedB[ii] - actualB[ii]) < 0.001);
}
}