Exemple #1
0
        public void FirstInFirstOut()
        {
            var buffer = new MyBuffer <double>(capacity: 3);

            buffer.Write(5.0);
            buffer.Write(8.0);
            var readVal1 = buffer.Read();
            var readVal2 = buffer.Read();

            Assert.AreEqual(5.0, readVal1);
            Assert.AreEqual(8.0, readVal2);
        }
Exemple #2
0
        public void FirstInFirstOutWithinCapacity()
        {
            var buffer = new MyBuffer <string>(capacity: 3);
            var value1 = "1.1";
            var value2 = "2.0";

            buffer.Write(value1);
            buffer.Write(value2);

            Assert.AreEqual(value1, buffer.Read());
            Assert.AreEqual(value2, buffer.Read());
            Assert.IsTrue(buffer.IsEmpty);
        }
Exemple #3
0
        public void OverWrites()
        {
            var buffer    = new MyBuffer <double>(capacity: 3);
            var testArray = new [] { 1.0, 2.0, 3.0, 4.0, 5.0 };

            foreach (var val in testArray)
            {
                buffer.Write(val);
            }
            Assert.IsTrue(buffer.IsFull);
            Assert.AreEqual(testArray[2], buffer.Read());
            Assert.AreEqual(testArray[3], buffer.Read());
            Assert.AreEqual(testArray[4], buffer.Read());
            Assert.IsTrue(buffer.IsEmpty);
        }
Exemple #4
0
        public void OverwritesWhenCapacityExceeded()
        {
            var buffer = new MyBuffer <double>(capacity: 3);
            var values = new[] { 1.0, 2.0, 3.0, 4.0, 5.0 };

            foreach (var value in values)
            {
                buffer.Write(value);
            }

            Assert.IsTrue(buffer.IsFull);
            Assert.AreEqual(values[2], buffer.Read());
            Assert.AreEqual(values[3], buffer.Read());
            Assert.AreEqual(values[4], buffer.Read());
            Assert.IsTrue(buffer.IsEmpty);
        }
Exemple #5
0
        private static void ProcessBuffer(MyBuffer <double> buffer)
        {
            var sum = 0.0;

            Console.WriteLine("Buffer: ");
            while (!buffer.IsEmpty)
            {
                sum += buffer.Read();
            }
            Console.WriteLine(sum);
        }