import junit.framework.TestCase;

/**
 * A JUnit test case class.
 * Every method starting with the word "test" will be called when running
 * the test with JUnit.
 */
public class MathRecursionTester extends TestCase {
    
    public void testFactorial() {
        assertEquals(1,  MathRecursion.factorial(0));
        assertEquals(1,  MathRecursion.factorial(1));
        assertEquals(2,  MathRecursion.factorial(2));
        assertEquals(6,  MathRecursion.factorial(3));
        assertEquals(3628800,  MathRecursion.factorial(10));
    }
    
    public void testFibonacci() {
        assertEquals(1,  MathRecursion.fibonacci(0));
        assertEquals(1,  MathRecursion.fibonacci(1));
        assertEquals(2,  MathRecursion.fibonacci(2));
        assertEquals(3,  MathRecursion.fibonacci(3));
        assertEquals(5,  MathRecursion.fibonacci(4));
        assertEquals(144,  MathRecursion.fibonacci(11));
        assertEquals(10946,  MathRecursion.fibonacci(20));
    }
    
}