Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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));
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        public void TestTranslate()
        {
            var interval   = GridInterval.FromExclusiveMax(0, 2);
            var translated = interval.Translation(5);

            Assert.Equal(5, translated.Min);
            Assert.Equal(7, translated.MaxExcl);
        }
Esempio n. 5
0
        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);
        }
Esempio n. 6
0
        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);
        }
Esempio n. 7
0
        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);
        }
Esempio n. 8
0
        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);
        }
Esempio n. 9
0
        public void TestIsEven(int min, int maxExcl, bool expected)
        {
            var interval = GridInterval.FromExclusiveMax(min, maxExcl);

            Assert.Equal(expected, interval.IsEven());
        }
Esempio n. 10
0
 public void TestArgumentException()
 {
     Assert.Throws <ArgumentException>(() => GridInterval.FromExclusiveMax(2, 2));
 }