public void TwoFrames_AddedInWrongOrder_ShouldBeBuffered() { var maxSequenceValue = 10; var receivedFrameId = 0; var initialFrame = new TestDataFrame { SequenceId = 4 }; var firstFrame = new TestDataFrame { SequenceId = 5 }; var secondFrame = new TestDataFrame { SequenceId = 6 }; var buffer = new DataFrameBuffer(maxSequenceValue); buffer.FrameBlockReceived += (sender, args) => receivedFrameId = args.Data.Last().SequenceId; buffer.Add(initialFrame); buffer.Add(secondFrame); Assert.AreEqual(initialFrame.SequenceId, receivedFrameId); buffer.Add(firstFrame); Assert.AreEqual(secondFrame.SequenceId, receivedFrameId); }
public void AddDataFrame() { using (IDbConnection dbConnection = Connection) { List <User> users = TestDataFrame.GetDataFrame(); string sQuery = "Insert INTO users(\"Name\",\"Age\") VALUES (@Name,@Age)"; dbConnection.Open(); dbConnection.Execute(sQuery, users.ToArray()); } }
public void SingleFrame_AddedToBuffer_ReturnImediately() { var maxSequenceValue = 10; var receivedFrameId = 0; var frame = new TestDataFrame { SequenceId = 5 }; var buffer = new DataFrameBuffer(maxSequenceValue); buffer.FrameBlockReceived += (sender, args) => receivedFrameId = args.Data[0].SequenceId; buffer.Add(frame); Assert.AreEqual(frame.SequenceId, receivedFrameId); }
public void TwoFramesWithOverrun_AddedInRightOrder_ShouldNotBuffer() { var maxSequenceValue = 10; var receivedFrameId = 0; var firstFrame = new TestDataFrame { SequenceId = 10 }; var secondFrame = new TestDataFrame { SequenceId = 0 }; var buffer = new DataFrameBuffer(maxSequenceValue); buffer.FrameBlockReceived += (sender, args) => receivedFrameId = args.Data.Last().SequenceId; buffer.Add(firstFrame); Assert.AreEqual(firstFrame.SequenceId, receivedFrameId); buffer.Add(secondFrame); Assert.AreEqual(secondFrame.SequenceId, receivedFrameId); }
public void TwoFrames_AddedInRightOrder_ShouldNotBeBuffered() { var maxSequenceValue = 10; var receivedFrameId = 0; var firstFrame = new TestDataFrame { SequenceId = 5 }; var secondFrame = new TestDataFrame { SequenceId = 6 }; var cache = new DataFrameBuffer(maxSequenceValue); cache.FrameBlockReceived += (sender, args) => receivedFrameId = args.Data[0].SequenceId; cache.Add(firstFrame); Assert.AreEqual(firstFrame.SequenceId, receivedFrameId); cache.Add(secondFrame); Assert.AreEqual(secondFrame.SequenceId, receivedFrameId); }