public void ToDoubleNaN()
 {
     Assert.ThrowsException <OverflowException>(() => {
         var castedVal = BigUInteger.ToDouble(double.NaN);
     });
 }
 public void ToDoublePositiveInfinity()
 {
     Assert.ThrowsException <OverflowException>(() => {
         var castedVal = BigUInteger.ToDouble(double.PositiveInfinity);
     });
 }
 public void ToDoubleZero()
 {
     ExecTest <double>(BigUInteger.ToDouble(new BigUInteger(0d)), 0d);
 }
 public void ToDecimalMinValue()
 {
     Assert.ThrowsException <OverflowException>(() => {
         var castedVal = BigUInteger.ToDouble(decimal.MinValue);
     });
 }
 public void ToDoubleEpsilonLower()
 {
     ExecTest <double>(BigUInteger.ToDouble(new BigUInteger(double.Epsilon) / 2), 0);
 }
 public void ToDoubleEpsilon()
 {
     ExecTest <double>(BigUInteger.ToDouble(new BigUInteger(double.Epsilon)), 0d);
 }
 public void ToDoubleMinOver()
 {
     Assert.ThrowsException <OverflowException>(() => {
         var castedVal = BigUInteger.ToDouble(new BigUInteger(double.MinValue) - 1);
     });
 }
 public void ToDoubleMaxOver()
 {
     ExecTest <double>(BigUInteger.ToDouble(new BigUInteger(double.MaxValue) + 1), double.PositiveInfinity);
 }
 public void ToDoubleMaxValue()
 {
     ExecTest <double>(BigUInteger.ToDouble(new BigUInteger(double.MaxValue)), double.MaxValue);
 }