public void Regress_Mutation_1DNotAppendedIfAlreadyThere() { RestartCountingStream stream = new RestartCountingStream(StreamHelpers.StringToStream("\xd")); StreamMappedString s = new StreamMappedString(stream, false); // There's only one \x1d so IsPastEnd(1) should be true. Assert.IsTrue(s.IsPastEnd(1)); }
public void Regress_Mutation_IsPastEndWorks() { RestartCountingStream stream = new RestartCountingStream(StreamHelpers.StringToStream("a")); StreamMappedString s = new StreamMappedString(stream, false); // There's only one character, so IsPastEnd(2) should be true. Assert.IsTrue(s.IsPastEnd(2)); // <-- 2 required because of extra \xd added. }
public void Regress_Mutation_ReadingCharactersForwardOnlyShouldCauseNoAdditionalResets() { RestartCountingStream stream = new RestartCountingStream(StreamHelpers.StringToStream("abcdefg")); StreamMappedString s = new StreamMappedString(stream, false); // Get a few characters. s.GetAt(0); s.GetAt(1); s.GetAt(2); s.GetAt(3); s.GetAt(4); // There should be exactly one reset for this. Assert.AreEqual(0, stream.ResetCount); }