Ejemplo n.º 1
0
        public void SymmetricArrayValues()
        {
            const int stride = 17;
            const int rowDex = 3;
            var testRFunc = new Func<int,int,int>((i, j) => i + j);
            var testArray = testRFunc.ToLowerTriangular(stride);
            Assert.AreEqual(stride.ToLowerTriangularArraySize(), testArray.Count());

            var rowTrace = testArray.SymmetricArrayValues(rowDex, stride).ToList();

            Assert.AreEqual(stride - 1, rowTrace.Count());

            for (var i = 0; i < rowDex; i++)
            {
                Assert.AreEqual(rowDex + i , rowTrace[i]);
            }

            for (var i = rowDex; i < stride - 1; i++)
            {
                Assert.AreEqual(rowDex + i + 1, rowTrace[i]);
            }
        }