diff --git a/9. labor/JUnitTest/src/junittest/Calculator.java b/9. labor/JUnitTest/src/junittest/Calculator.java new file mode 100644 index 0000000000000000000000000000000000000000..cb255674fd653b752c17f6dceeeabf4897ac16cb --- /dev/null +++ b/9. labor/JUnitTest/src/junittest/Calculator.java @@ -0,0 +1,14 @@ +package junittest; + +public class Calculator { + public double multiply(double a, double b) { + return a * b; + } + + public double divide(double a, double b) throws IllegalArgumentException { + if(b == 0) { + throw new IllegalArgumentException(); + } + return a / b; + } +} diff --git a/9. labor/JUnitTest/test/junittest/CalculatorTest.java b/9. labor/JUnitTest/test/junittest/CalculatorTest.java new file mode 100644 index 0000000000000000000000000000000000000000..dc63c22445cd0dbe5275a63c012a8e132484e744 --- /dev/null +++ b/9. labor/JUnitTest/test/junittest/CalculatorTest.java @@ -0,0 +1,55 @@ +package junittest; + +import java.util.ArrayList; +import java.util.List; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; +import org.junit.runners.Parameterized.Parameters; + +@RunWith(Parameterized.class) +public class CalculatorTest { + double a; + double b; + Calculator calc; + + public CalculatorTest(double a, double b) { + this.a = a; + this.b = b; + } + + @Before + public void setUp() { + calc = new Calculator(); + } + + @Test + public void testMultiply() { + double result = calc.multiply(a, b); + Assert.assertEquals(a * b, result, 0); + } + + @Test + public void testDivide() throws Exception { + double result = calc.divide(a, b); + Assert.assertEquals(a / b, result, 0); + } + + @Test(expected=IllegalArgumentException.class) + public void testDivideByZero() throws Exception { + calc.divide(a, 0.0); + } + + @Parameters + public static List<Object[]> parameters() { + List<Object[]> params = new ArrayList<>(); + params.add(new Object[] {0.0, 0.0}); + params.add(new Object[] {10.0, 0.0}); + params.add(new Object[] {10.0, 3.0}); + params.add(new Object[] {20.0, 4.0}); + params.add(new Object[] {40.0, 5.0}); + return params; + } +} \ No newline at end of file diff --git a/9. labor/java_9_junit_tutorial.pdf b/9. labor/java_9_junit_tutorial.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0478eac5546b8c48bfcc95551e3669152a723d2e Binary files /dev/null and b/9. labor/java_9_junit_tutorial.pdf differ diff --git a/prog3_a_junit_p1.pdf b/prog3_a_junit_p1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b4ebc2be8fbfebd0afaee9c632c1da43705d4ba7 Binary files /dev/null and b/prog3_a_junit_p1.pdf differ