Add tests for factorial example. (#112)
This commit is contained in:
committed by
Aditya Bhargava
parent
4c3bc702f4
commit
184f80127c
21
03_recursion/java/03_factorial/src/Factorial2.java
Normal file
21
03_recursion/java/03_factorial/src/Factorial2.java
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
public class Factorial2 {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Factorial2 factorial2 = new Factorial2();
|
||||||
|
System.out.println("The factorial of 5 is " + factorial2.getFactorial(5));
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getFactorial(int number) {
|
||||||
|
if (isZeroOrOne(number)) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return number * getFactorial(number - 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isZeroOrOne(int number) {
|
||||||
|
if (number > 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
20
03_recursion/java/03_factorial/src/Factorial2Test.java
Normal file
20
03_recursion/java/03_factorial/src/Factorial2Test.java
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
import org.junit.Assert;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
public class Factorial2Test {
|
||||||
|
@Test
|
||||||
|
public void testIsZeroOrOne() {
|
||||||
|
Factorial2 factorial2 = new Factorial2();
|
||||||
|
|
||||||
|
Assert.assertEquals(true, factorial2.isZeroOrOne(0));
|
||||||
|
Assert.assertEquals(true, factorial2.isZeroOrOne(1));
|
||||||
|
Assert.assertEquals(false, factorial2.isZeroOrOne(5));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testFactorial() {
|
||||||
|
Factorial2 factorial2 = new Factorial2();
|
||||||
|
|
||||||
|
Assert.assertEquals(120, factorial2.getFactorial(5));
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user