public void SlideReturnsPointerLength_3_FromTestFile3AtPos4() { var path = TestContext.CurrentContext.TestDirectory + "../../../res/testfile3"; var file = new DataFile(path); var sw = new SlidingWindow(file.GetAllBytes()); uint expected = 3; for (var i = 0; i < 4; i++) { sw.Slide(); } var actual = (PointerByte)sw.Slide(); Assert.AreEqual(expected, actual.Length); }
public void SlideReturnsPointerLength_2_FromTestFile2AtPos10() { var path = TestContext.CurrentContext.TestDirectory + "../../../res/testfile2"; var file = new DataFile(path); var sw = new SlidingWindow(file.GetAllBytes()); var expected = new PointerByte(5, 2); for (var i = 0; i < 9; i++) { Console.WriteLine(sw.Slide()); } var actual = (PointerByte)sw.Slide(); Assert.AreEqual(expected, actual); }
public void Test1() { var numbers = new[] { 100, 200, 300, 400 }; var result = SlidingWindow.Slide(numbers, 2).Max(w => w.Sum()); Assert.Equal(700, result); }
public void LookAheadEmpty_SlidesAllBytes_Empty() { MemoryStream stream = new MemoryStream(new byte[] { 1, 2, 3, 4, 5, 6, 7, 8 }); SlidingWindow window = new SlidingWindow(stream, 3, 2, 4); window.Slide(8); Assert.IsTrue(window.LookAheadEmpty); }
public void LookAheadEmpty_SlidesFourBytes_NotEmpty() { MemoryStream stream = new MemoryStream(new byte[] { 1, 2, 3, 4, 5 }); SlidingWindow window = new SlidingWindow(stream, 3, 2, 4); window.Slide(4); Assert.IsFalse(window.LookAheadEmpty); }
public void Slide_SlidesSixTimes_Slided() { MemoryStream stream = new MemoryStream(new byte[] { 0, 1, 2, 3, 4, 5 }); SlidingWindow window = new SlidingWindow(stream, 4, 3, 4); window.Slide(6); var bytes = window.Bytes; CollectionAssert.AreEqual(new [] { 0, 1, 2, 3, 4, 5, 0 }, bytes); }
public void SlideReturnsRawByte_a_AsFirstByte() { var path = TestContext.CurrentContext.TestDirectory + "../../../res/testfile1"; var file = new DataFile(path); var sw = new SlidingWindow(file.GetAllBytes()); var expected = new RawByte(97); var actual = (RawByte)sw.Slide(); Assert.AreEqual(expected.Data, actual.Data); }
public void Test1() { var numbers = new[] { 100, 200, 300, 400 }; var result = SlidingWindow.Slide(numbers, 3).Select(x => x.ToArray()); Assert.Equal(new[] { new[] { 100, 200, 300 }, new[] { 200, 300, 400 }, }, result); }
public void NextToken_LastToken_00Token() { MemoryStream stream = new MemoryStream(new byte[] { 1, 2, 3, 4, 5 }); SlidingWindow window = new SlidingWindow(stream, 3, 2, 4); window.Slide(4); Token token = window.NextToken(); Assert.AreEqual(0, token.Offset); Assert.AreEqual(0, token.Length); Assert.AreEqual(5, token.Byte); }
public void NextToken_19Token() { MemoryStream stream = new MemoryStream(new byte[] { 1, 2, 3, 4, 5, 1, 6, 7, 8, 1, 9, 4, 5, 1, 6, 10, 2, 11, 4, 11, 5, 2, 2, 6, 4, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13 }); SlidingWindow window = new SlidingWindow(stream, 26, 10, 4); window.Slide(26); Token token = window.NextToken(); Assert.AreEqual(1, token.Offset); Assert.AreEqual(9, token.Length); Assert.AreEqual(12, token.Byte); }
public void NextToken_34Token() { MemoryStream stream = new MemoryStream(new byte[] { 1, 2, 3, 4, 5, 1, 6, 7, 8, 1, 9, 4, 5, 1, 6, 10, 2, 11, 4, 12, 13, 14, 15, 6, 4, 1, 2, 3, 1, 2, 3, 1, 4, 10, 9, 4, 16, 10, 6, 4, 12, 1, 13, 17, 5, 9, }); SlidingWindow window = new SlidingWindow(stream, 28, 12, 4); window.Slide(28); Token token = window.NextToken(); Assert.AreEqual(3, token.Offset); Assert.AreEqual(4, token.Length); Assert.AreEqual(4, token.Byte); }
public void SlideAtEndWhenAtEnd() { var path = TestContext.CurrentContext.TestDirectory + "../../../res/testfile1"; var file = new DataFile(path); var sw = new SlidingWindow(file.GetAllBytes()); for (var i = 0; i < 3; i++) { sw.Slide(); } Assert.IsTrue(sw.AtEnd()); }