Exemple #1
0
        public void InsertMaintainsOrder()
        {
            var buffer = new SingleStatisticsCollection(4);

            buffer.Insert(0, 5);
            Assert.AreEqual(5, buffer[0]);
            buffer.Insert(0, 7);
            Assert.AreEqual(7, buffer[0]);
            Assert.AreEqual(5, buffer[1]);
            buffer.Insert(1, 3);
            Assert.AreEqual(7, buffer[0]);
            Assert.AreEqual(3, buffer[1]);
            Assert.AreEqual(5, buffer[2]);
            buffer.Insert(1, 13);
            Assert.AreEqual(7, buffer[0]);
            Assert.AreEqual(13, buffer[1]);
            Assert.AreEqual(3, buffer[2]);
            Assert.AreEqual(5, buffer[3]);
            buffer.Insert(2, 2);
            Assert.AreEqual(13, buffer[0]);
            Assert.AreEqual(3, buffer[1]);
            Assert.AreEqual(2, buffer[2]);
            Assert.AreEqual(5, buffer[3]);
            buffer.Insert(0, 17);
            Assert.AreEqual(17, buffer[0]);
            Assert.AreEqual(3, buffer[1]);
            Assert.AreEqual(2, buffer[2]);
            Assert.AreEqual(5, buffer[3]);
        }
Exemple #2
0
        public void CanGetBackOutAgain2()
        {
            var buffer = new SingleStatisticsCollection(5);

            Assert.AreEqual(0, buffer.Count);
            buffer.Add(1);
            Assert.AreEqual(1, buffer.Count);
            Assert.AreEqual(1, buffer[0]);
            buffer.Add(2);
            Assert.AreEqual(2, buffer.Count);
            Assert.AreEqual(1, buffer[0]);
            Assert.AreEqual(2, buffer[1]);
            buffer.Add(3);
            Assert.AreEqual(3, buffer.Count);
            Assert.AreEqual(1, buffer[0]);
            Assert.AreEqual(2, buffer[1]);
            Assert.AreEqual(3, buffer[2]);
            buffer.Add(4);
            Assert.AreEqual(4, buffer.Count);
            Assert.AreEqual(1, buffer[0]);
            Assert.AreEqual(2, buffer[1]);
            Assert.AreEqual(3, buffer[2]);
            Assert.AreEqual(4, buffer[3]);
            buffer.Add(5);
            Assert.AreEqual(5, buffer.Count);
            Assert.AreEqual(1, buffer[0]);
            Assert.AreEqual(2, buffer[1]);
            Assert.AreEqual(3, buffer[2]);
            Assert.AreEqual(4, buffer[3]);
            Assert.AreEqual(5, buffer[4]);
        }
Exemple #3
0
        /// <summary>
        /// If <see cref="UseFakeHeading"/> is false, calculate the angle offset to correct the
        /// positioning of the object.
        /// </summary>
        public void Update()
        {
            if (camT == null)
            {
                camT = DisplayManager.MainCamera.transform;
            }

            if (samples == null)
            {
                samples = new SingleStatisticsCollection(averagingIterations);
            }

            if (UseFakeHeading)
            {
                HasHeading = true;
            }
            else
            {
                SetNorth();
            }

            if (!float.IsNaN(toNorthHeading))
            {
                transform.rotation = Quaternion.Euler(0, toNorthHeading, 0);
            }

            if (DebugReport)
            {
                PrintDebugReport();
            }
        }
Exemple #4
0
        public void CanGetBackOutAgain()
        {
            var buffer = new SingleStatisticsCollection(1)
            {
                7
            };

            Assert.AreEqual(7, buffer[0]);
        }
Exemple #5
0
        public void AddingIncreasesCount()
        {
            var buffer = new SingleStatisticsCollection(1)
            {
                5
            };

            Assert.AreEqual(1, buffer.Count);
        }
Exemple #6
0
        public void LargerLooping()
        {
            var buffer = new SingleStatisticsCollection(100);

            for (var i = 0; i < 120; ++i)
            {
                buffer.Add(i);
                Assert.AreEqual(Min(100, i + 1), buffer.Count);
            }
        }
Exemple #7
0
        public void LoopingOverwrites()
        {
            var buffer = new SingleStatisticsCollection(1)
            {
                3,
                2
            };

            Assert.AreEqual(2, buffer[0]);
        }
Exemple #8
0
        public void LoopingDoesntGrowSize()
        {
            var buffer = new SingleStatisticsCollection(1)
            {
                3,
                2
            };

            Assert.AreEqual(1, buffer.Count);
        }
Exemple #9
0
        public void ComputesMedian()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                3,
                4,
                1
            };

            Assert.AreEqual(3f, buffer.Median);
        }
Exemple #10
0
        public void ComputesMax()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                3,
                4,
                1
            };

            Assert.AreEqual(5, buffer.Maximum);
        }
Exemple #11
0
        public void ComputesStandardDeviation()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                3,
                4,
                1
            };

            Assert.AreEqual(1.70782518f, buffer.StandardDeviation);
        }
Exemple #12
0
        public void ComputesBasicStandardDeviation()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                0,
                2,
                0,
                2
            };

            Assert.AreEqual((float)Sqrt(4 / 3f), buffer.StandardDeviation);
        }
Exemple #13
0
        public void ComputesTrivialStandardDeviation()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                5,
                5,
                5
            };

            Assert.AreEqual(0f, buffer.StandardDeviation);
        }
Exemple #14
0
        public void CopyWithTooLargeOffsetThrowsException()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                7,
                3
            };
            var arr = new float[3];

            Assert.Throws <ArgumentException>(() =>
                                              buffer.CopyTo(arr, 3));
        }
Exemple #15
0
        public void CopyWithNegativeOffsetThrowsException()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                7,
                3
            };
            var arr = new float[3];

            Assert.Throws <ArgumentOutOfRangeException>(() =>
                                                        buffer.CopyTo(arr, -1));
        }
Exemple #16
0
        public void CopyUnfullWithOffsetThrowsExceptionWithTooSmallDestination()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                7,
                3
            };
            var arr = new float[3];

            Assert.Throws <ArgumentException>(() =>
                                              buffer.CopyTo(arr, 1));
        }
Exemple #17
0
        public void CopyUnfullUnwrappedBufferWithoutOffsetMaintainsOrder()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                7,
                3
            };
            var arr = new float[3];

            buffer.CopyTo(arr, 0);
            Assert.AreEqual(5, arr[0]);
            Assert.AreEqual(7, arr[1]);
            Assert.AreEqual(3, arr[2]);
        }
Exemple #18
0
        public void MaintainsOrder()
        {
            var buffer = new SingleStatisticsCollection(5)
            {
                5,
                3,
                4,
                1,
                2
            };

            Assert.AreEqual(5, buffer[0]);
            Assert.AreEqual(3, buffer[1]);
            Assert.AreEqual(4, buffer[2]);
            Assert.AreEqual(1, buffer[3]);
            Assert.AreEqual(2, buffer[4]);
        }
Exemple #19
0
        public void CopyFullUnwrappedBufferWithOffsetMaintainsOrder()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                7,
                3,
                13
            };
            var arr = new float[5];

            buffer.CopyTo(arr, 1);
            Assert.AreEqual(0, arr[0]);
            Assert.AreEqual(5, arr[1]);
            Assert.AreEqual(7, arr[2]);
            Assert.AreEqual(3, arr[3]);
            Assert.AreEqual(13, arr[4]);
        }
Exemple #20
0
        public void ShiftsOldValuesOut()
        {
            var buffer = new SingleStatisticsCollection(4)
            {
                5,
                3,
                4,
                1
            };

            Assert.AreEqual(5, buffer[0]);
            Assert.AreEqual(3, buffer[1]);
            Assert.AreEqual(4, buffer[2]);
            Assert.AreEqual(1, buffer[3]);
            buffer.Add(2);
            Assert.AreEqual(3, buffer[0]);
            Assert.AreEqual(4, buffer[1]);
            Assert.AreEqual(1, buffer[2]);
            Assert.AreEqual(2, buffer[3]);
        }
Exemple #21
0
 /// <summary>
 /// Sets up the statistical analyzer
 /// </summary>
 private void StartSampling()
 {
     torques       = new SingleStatisticsCollection(RINGBUFFER_SIZE);
     accelerations = new SingleStatisticsCollection(RINGBUFFER_SIZE);
     Restart();
 }
Exemple #22
0
        public void StartsEmpty()
        {
            var buffer = new SingleStatisticsCollection(100);

            Assert.AreEqual(0, buffer.Count);
        }