public static void Round_ToOdd_ForHalfWayPoints() { Func <decimal, decimal> round = _ => RoundingAdjusters.Round(_, RoundingMode.ToOdd); Assert.Equal(1m, round(1.5m)); Assert.Equal(1m, round(0.5m)); Assert.Equal(-1m, round(-0.5m)); Assert.Equal(-1m, round(-1.5m)); }
public static void Round_HalfAwayFromZero_ForHalfWayPoints() { Func <decimal, decimal> round = _ => RoundingAdjusters.Round(_, RoundingMode.HalfAwayFromZero); Assert.Equal(2m, round(1.5m)); Assert.Equal(1m, round(0.5m)); Assert.Equal(-1m, round(-0.5m)); Assert.Equal(-2m, round(-1.5m)); }
public static void Round_HalfDown_ForHalfWayPoints() { Func <decimal, decimal> round = _ => RoundingAdjusters.Round(_, RoundingMode.HalfDown); Assert.Equal(1m, round(1.5m)); Assert.Equal(0m, round(0.5m)); Assert.Equal(-1m, round(-0.5m)); Assert.Equal(-2m, round(-1.5m)); Assert.Equal(Decimal.MinValue, round(Decimal.MinValue)); }
public static void Round_AwayFromZero() { Func <decimal, decimal> round = _ => RoundingAdjusters.Round(_, RoundingMode.AwayFromZero); Assert.Equal(2m, round(1.6m)); Assert.Equal(2m, round(1.5m)); Assert.Equal(2m, round(1.4m)); Assert.Equal(1m, round(1m)); Assert.Equal(1m, round(0.6m)); Assert.Equal(1m, round(0.5m)); Assert.Equal(1m, round(0.4m)); Assert.Equal(0m, round(0m)); Assert.Equal(-1m, round(-0.4m)); Assert.Equal(-1m, round(-0.5m)); Assert.Equal(-1m, round(-0.6m)); Assert.Equal(-1m, round(-1m)); Assert.Equal(-2m, round(-1.4m)); Assert.Equal(-2m, round(-1.5m)); Assert.Equal(-2m, round(-1.6m)); Assert.Equal(Decimal.MaxValue, round(Decimal.MaxValue)); Assert.Equal(Decimal.MinValue, round(Decimal.MinValue)); }
public static void Round_ToOdd(decimal value, decimal expectedValue) => Assert.Equal(expectedValue, RoundingAdjusters.Round(value, RoundingMode.ToOdd));
public static void Round_HalfAwayFromZero(decimal value, decimal expectedValue) => Assert.Equal(expectedValue, RoundingAdjusters.Round(value, RoundingMode.HalfAwayFromZero));
public static void Round_HalfUp_ForMaxValue() => Assert.Equal(Decimal.MaxValue, RoundingAdjusters.Round(Decimal.MaxValue, RoundingMode.HalfUp));
public static void Round_HalfDown_ForMinValue() => Assert.Equal(Decimal.MinValue, RoundingAdjusters.Round(Decimal.MinValue, RoundingMode.HalfDown));
public static void Round_HalfDown(decimal value, decimal expectedValue) => Assert.Equal(expectedValue, RoundingAdjusters.Round(value, RoundingMode.HalfDown));
public decimal Round(decimal value, int decimalPlaces) => UpOrDown ? RoundingAdjusters.HalfUp(value, decimalPlaces) : RoundingAdjusters.HalfDown(value, decimalPlaces);
public decimal Round(decimal value) => UpOrDown ? RoundingAdjusters.HalfUp(value) : RoundingAdjusters.HalfDown(value);