示例#1
0
        /// <summary>
        ///A test for unsafe_put1d
        ///</summary>
        public void unsafe_put1dTestHelper <T, S>()
        {
            Narray_Accessor <T> target = new Narray_Accessor <T>(10, 10);
            int i     = 15;
            T   value = (T)Convert.ChangeType(99, typeof(T));

            target.UnsafePut1d(i, value);
            Assert.AreEqual(value, target.UnsafeAt1d(i));
        }
示例#2
0
        /// <summary>
        ///A test for reserve
        ///</summary>
        public void reserveTestHelper <T>()
        {
            Narray_Accessor <T> target = new Narray_Accessor <T>(10);
            int n = 5;

            target.Reserve(n);
            Assert.AreEqual(10, target.total);
            Assert.IsTrue(15 < target.allocated);
        }
示例#3
0
        /// <summary>
        ///A test for roundup_
        ///</summary>
        public void roundup_TestHelper <T>()
        {
            int i        = 140;
            int expected = 209;
            int actual;

            actual = Narray_Accessor <T> .roundup_(i);

            Assert.AreEqual(expected, actual);
        }
示例#4
0
        /// <summary>
        ///A test for unsafe_at1d
        ///</summary>
        public void unsafe_at1dTestHelper <T>()
        {
            Narray_Accessor <T> target = new Narray_Accessor <T>(10, 10);
            T expected = default(T);

            // 1d
            for (int i = 0, n = target.Length1d(); i < n; i++)
            {
                Assert.AreEqual(expected, target.UnsafeAt1d(i));
            }
        }
示例#5
0
        /// <summary>
        ///A test for setdims_
        ///</summary>
        public void setdims_TestHelper <T>()
        {
            int len = 2000;
            Narray_Accessor <T> target = new Narray_Accessor <T>(len);

            target.SetDims(len, 0, 0, 0);
            Assert.AreEqual(len, target.Length());
            target.SetDims(100, 20, 0, 0);
            Assert.AreEqual(len, target.Length());
            target.SetDims(10, 20, 10, 0);
            Assert.AreEqual(len, target.Length());
        }
示例#6
0
        /// <summary>
        ///A test for check_range
        ///</summary>
        public void check_rangeTestHelper <T>()
        {
            int i = 0;
            int n = 4;

            Narray_Accessor <T> .check_range(i, n);

            Narray_Accessor <T> .check_range(1, n);

            Narray_Accessor <T> .check_range(2, n);

            Narray_Accessor <T> .check_range(3, n);
        }
示例#7
0
        /// <summary>
        ///A test for alloc_
        ///</summary>
        public void alloc_TestHelper <T>()
        {
            Narray_Accessor <T> target = new Narray_Accessor <T>(10);

            Assert.AreEqual(10, target.Length());
            int d0 = 10;
            int d1 = 20;
            int d2 = 30;
            int d3 = 0;

            target.alloc_(d0, d1, d2, d3);
            Assert.AreEqual(6000, target.Length());
            Assert.AreEqual(d0, target.Dim(0));
            Assert.AreEqual(d1, target.Dim(1));
            Assert.AreEqual(d2, target.Dim(2));
            Assert.AreEqual(d3, target.Dim(3));
        }
示例#8
0
        /// <summary>
        ///A test for unsafe_at
        ///</summary>
        public void unsafe_atTestHelper <T>()
        {
            Narray_Accessor <T> target = new Narray_Accessor <T>(100);
            T expected = default(T);

            // 1d
            for (int i = 0, n = target.Dim(0); i < n; i++)
            {
                Assert.AreEqual(expected, target.UnsafeAt(i));
            }
            // 2d
            target = new Narray_Accessor <T>(10, 10);
            for (int i = 0, n = target.Dim(0); i < n; i++)
            {
                for (int j = 0, m = target.Dim(1); j < m; j++)
                {
                    Assert.AreEqual(expected, target.UnsafeAt(i, j));
                }
            }
        }