Example #1
0
 public void TestNext_Cov_01()
 {
     Assert.Equal(
         "[10..100]",
         ForSByte
         .Related(GreaterThanOrEqual, 10)
         .Intersect(ForSByte.Related(LessThanOrEqual, 100))
         .ToString()
         );
     Assert.Equal(
         "[10..100]",
         ForShort
         .Related(GreaterThanOrEqual, 10)
         .Intersect(ForShort.Related(LessThanOrEqual, 100))
         .ToString()
         );
     Assert.Equal(
         "[10..100]",
         ForUInt
         .Related(GreaterThanOrEqual, 10)
         .Intersect(ForUInt.Related(LessThanOrEqual, 100))
         .ToString()
         );
     Assert.Equal(
         "[10..100]",
         ForULong
         .Related(GreaterThanOrEqual, 10)
         .Intersect(ForULong.Related(LessThanOrEqual, 100))
         .ToString()
         );
     Assert.Equal(
         "[10..100]",
         ForUShort
         .Related(GreaterThanOrEqual, 10)
         .Intersect(ForUShort.Related(LessThanOrEqual, 100))
         .ToString()
         );
     Assert.Equal(
         "[10..100]",
         ForFloat
         .Related(GreaterThanOrEqual, 10)
         .Intersect(ForFloat.Related(LessThanOrEqual, 100))
         .ToString()
         );
     Assert.Equal(
         "[-100..-10]",
         ForFloat
         .Related(GreaterThanOrEqual, -100)
         .Intersect(ForFloat.Related(LessThanOrEqual, -10))
         .ToString()
         );
     Assert.Equal(
         "[-10..10]",
         ForFloat
         .Related(GreaterThanOrEqual, -10)
         .Intersect(ForFloat.Related(LessThanOrEqual, 10))
         .ToString()
         );
 }
Example #2
0
 public void TestDouble_03()
 {
     Assert.Equal("NaN", ForDouble.Related(Equal, double.NaN).ToString());
     Assert.Equal("NaN", ForFloat.Related(Equal, float.NaN).ToString());
     Assert.True(ForDouble.Related(Equal, double.NaN).Any(Equal, double.NaN));
     Assert.True(ForFloat.Related(Equal, float.NaN).Any(Equal, float.NaN));
     Assert.Equal("[Inf..Inf]", ForDouble.Related(Equal, double.PositiveInfinity).ToString());
     Assert.Equal("[Inf..Inf]", ForFloat.Related(Equal, float.PositiveInfinity).ToString());
     Assert.Equal("[-Inf..-Inf]", ForDouble.Related(Equal, double.NegativeInfinity).ToString());
     Assert.Equal("[-Inf..-Inf]", ForFloat.Related(Equal, float.NegativeInfinity).ToString());
 }
Example #3
0
        public void TestFloat_01()
        {
            Assert.Equal("[-Inf..-Inf]", ForFloat.Related(LessThan, float.MinValue).ToString());
            var lt = ForFloat.Related(LessThan, 0.0f);

            Assert.Equal(FormattableString.Invariant($"[-Inf..{-float.Epsilon:G9}]"), lt.ToString());
            var gt = ForFloat.Related(GreaterThan, 0.0f);

            Assert.Equal(FormattableString.Invariant($"[{float.Epsilon:G9}..Inf]"), gt.ToString());
            var eq = ForFloat.Related(Equal, 0.0f);

            Assert.Equal("[0..0]", eq.ToString());
            var none = lt.Complement().Intersect(gt.Complement()).Intersect(eq.Complement());

            Assert.Equal("NaN", none.ToString());
            Assert.False(none.IsEmpty);
        }