public void MovePointRightI() { BigDecimal movePtRight = BigDecimal.Parse("-1.58796521458"); BigDecimal alreadyMoved = BigMath.MovePointRight(movePtRight, 8); Assert.True(alreadyMoved.Scale == 3 && alreadyMoved.ToString().Equals("-158796521.458"), "move point right 8 failed"); movePtRight = new BigDecimal(value, 2); alreadyMoved = BigMath.MovePointRight(movePtRight, 4); Assert.True(alreadyMoved.Scale == 0 && alreadyMoved.ToString().Equals("1234590800"), "move point right 4 failed"); movePtRight = new BigDecimal(134E12); alreadyMoved = BigMath.MovePointRight(movePtRight, 2); Assert.True(alreadyMoved.Scale == 0 && alreadyMoved.ToString().Equals("13400000000000000"), "move point right 2 failed"); movePtRight = new BigDecimal(-3.4E-10); alreadyMoved = BigMath.MovePointRight(movePtRight, 5); Assert.True(alreadyMoved.Scale == movePtRight.Scale - 5 && alreadyMoved.ToDouble() == -0.000034, "move point right 5 failed"); alreadyMoved = BigMath.MovePointRight(alreadyMoved, -5); Assert.True(alreadyMoved.Equals(movePtRight), "move point right -5 failed"); }