public void TestMultiplication(int min, int maxExcl, double multiplier, int?expectedMax) { var interval = GridInterval.FromExclusiveMax(min, maxExcl); var result = interval.Multiplication(multiplier); Assert.Equal(expectedMax, result?.MaxExcl); }
public void TestTouches(int min, int maxExcl, bool expected) { var interval = GridInterval.FromExclusiveMax(0, 10); var other = GridInterval.FromExclusiveMax(min, maxExcl); Assert.Equal(expected, interval.Touches(other)); }
public void TestSetPosition(int min, int maxExcl, IntervalAnchor anchor, int expectedMin) { var interval = GridInterval.FromExclusiveMax(min, maxExcl); var translated = interval.SetPosition(20, anchor); Assert.Equal(expectedMin, translated.Min); }
public void TestTranslate() { var interval = GridInterval.FromExclusiveMax(0, 2); var translated = interval.Translation(5); Assert.Equal(5, translated.Min); Assert.Equal(7, translated.MaxExcl); }
public void TestSetMin() { var i1 = GridInterval.FromExclusiveMax(20, 30); var i2 = GridInterval.FromExclusiveMax(0, 4); var aligned = i2.SetMin(i1.Min); Assert.Equal(20, aligned.Min); Assert.Equal(24, aligned.MaxExcl); }
public void TestEquality() { var i1 = new GridInterval(0, 2); var i2 = GridInterval.FromExclusiveMax(0, 3); var i3 = GridInterval.FromLength(0, 2); Assert.Equal(i1, i2); Assert.True(i1 == i2); Assert.NotEqual(i1, i3); Assert.True(i1 != i3); }
public void TestSplitEven() { var interval = GridInterval.FromExclusiveMax(0, 2); var halves = interval.SplitEven(); Assert.Equal(2, halves.Length); Assert.Equal(1, halves[0].Length); Assert.Equal(1, halves[1].Length); Assert.Equal(0, halves[0].Min); Assert.Equal(1, halves[0].MaxExcl); Assert.Equal(1, halves[1].Min); Assert.Equal(2, halves[1].MaxExcl); }
public void TestRelate() { var i1 = GridInterval.FromExclusiveMax(0, 4); var i2 = GridInterval.FromExclusiveMax(10, 14); var related = i1.Relate(i2, Relation.StartToStart()); Assert.Equal(10, related.Min); related = i1.Relate(i2, Relation.StartToCenter()); Assert.Equal(11, related.Min); related = i1.Relate(i2, Relation.StartToEnd()); Assert.Equal(13, related.Min); related = i1.Relate(i2, Relation.EndToStart()); Assert.Equal(7, related.Min); related = i1.Relate(i2, Relation.EndToCenter()); Assert.Equal(8, related.Min); related = i1.Relate(i2, Relation.EndToEnd()); Assert.Equal(10, related.Min); }
public void TestIsEven(int min, int maxExcl, bool expected) { var interval = GridInterval.FromExclusiveMax(min, maxExcl); Assert.Equal(expected, interval.IsEven()); }
public void TestArgumentException() { Assert.Throws <ArgumentException>(() => GridInterval.FromExclusiveMax(2, 2)); }