Mercurial > repos > IBBoard.Tests
changeset 11:37642712f632
* Tests for method for making percentage of one integer compared to another to ensure consistency
no-open-ticket
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Fri, 06 Nov 2009 19:57:44 +0000 |
parents | 5507654d189d |
children | 298786adcddc |
files | CustomMath/IBBMathTests.cs |
diffstat | 1 files changed, 40 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/CustomMath/IBBMathTests.cs Sat Oct 24 19:50:09 2009 +0000 +++ b/CustomMath/IBBMathTests.cs Fri Nov 06 19:57:44 2009 +0000 @@ -245,7 +245,46 @@ Assert.AreEqual(3, IBBMath.FloorToHalf(3)); } + [Test()] + public void TestPercentageCalculations() + { + Assert.AreEqual(50, IBBMath.Percentage(1,2)); + Assert.AreEqual(50, IBBMath.Percentage(2,4)); + Assert.AreEqual(25, IBBMath.Percentage(1,4)); + Assert.AreEqual(10, IBBMath.Percentage(1,10)); + Assert.AreEqual(1, IBBMath.Percentage(1,100)); + Assert.AreEqual(0.1, IBBMath.Percentage(1,1000)); + Assert.AreEqual(200, IBBMath.Percentage(2,1)); + Assert.AreEqual(-50, IBBMath.Percentage(-1,2)); + Assert.AreEqual(-50, IBBMath.Percentage(-2,4)); + Assert.AreEqual(-50, IBBMath.Percentage(1,-2)); + Assert.AreEqual(-50, IBBMath.Percentage(2,-4)); + } - + [Test()] + public void TestPercentageCalculationsForZero() + { + Assert.AreEqual(0, IBBMath.Percentage(0,2)); + Assert.AreEqual(0, IBBMath.Percentage(0,4)); + Assert.AreEqual(0, IBBMath.Percentage(0,10)); + Assert.AreEqual(0, IBBMath.Percentage(0,-2)); + Assert.AreEqual(0, IBBMath.Percentage(0,-4)); + Assert.AreEqual(0, IBBMath.Percentage(0,-10)); + } + + [Test()] + public void TestPercentageCalculationsWithZeroAsDivisor() + { + Assert.AreEqual(double.PositiveInfinity, IBBMath.Percentage(1,0)); + Assert.AreEqual(double.PositiveInfinity, IBBMath.Percentage(2,0)); + Assert.AreEqual(double.NegativeInfinity, IBBMath.Percentage(-1,0)); + Assert.AreEqual(double.NegativeInfinity, IBBMath.Percentage(-2,0)); + } + + [Test()] + public void TestPercentageCalculationsWithZeroAsNumberAndDivisor() + { + Assert.AreEqual(double.NaN, IBBMath.Percentage(0,0)); + } } }