public void Ctor_WhenEndOffsetIsLessThanStartOffset_ClampsEndOffsetToOneLessThanStart(int start, int end) { var range = new EdgeRange(start, end); Assert.Equal(start, range.StartOffset); Assert.Equal(start - 1, range.EndOffset); Assert.Equal(0, range.Count); Assert.True(range.IsEmpty); }
public void LimitCountToEnd_WhenProvidingMaxLengthLessThanCount_MovesStartOffet() { var range = new EdgeRange(0, 9); Assert.Equal(10, range.Count); range.LimitCountToEnd(5); Assert.Equal(5, range.Count); Assert.Equal(9, range.EndOffset); Assert.Equal(5, range.StartOffset); }
public void LimitCountToEnd_IfMaxLengthIsNegative_ThrowsException() { var range = new EdgeRange(0, 10); Assert.Throws <ArgumentOutOfRangeException>(() => range.LimitCountToEnd(-1)); }
public void Count_WhenStartEqualsEnd_Returns1(int offset) { var range = new EdgeRange(offset, offset); Assert.Equal(1, range.Count); }