From e045189ab71eca49f85a77cf43626a7cec00d59b Mon Sep 17 00:00:00 2001 From: bahti Date: Sun, 8 Apr 2018 13:03:40 +0300 Subject: [PATCH] asserting exceptions in junit4 and junit5 code sample added --- .../exception/ExceptionAssertionTest.java | 23 ++++++++++++++++++ .../junit4/ExceptionAssertionTest.java | 24 +++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionTest.java create mode 100644 testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionTest.java diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionTest.java new file mode 100644 index 000000000000..f97e2ba9c71f --- /dev/null +++ b/testing-modules/junit-5/src/test/java/com/baeldung/exception/ExceptionAssertionTest.java @@ -0,0 +1,23 @@ +package com.baeldung.exception; + +import static org.junit.jupiter.api.Assertions.assertThrows; + +import org.junit.jupiter.api.Test; + +public class ExceptionAssertionTest { + @Test + public void whenExceptionThrown_thenAssertionSucceeds() { + String test = null; + assertThrows(NullPointerException.class, () -> { + test.length(); + }); + } + + @Test + public void whenDerivedExceptionThrown_thenAssertionSucceds() { + String test = null; + assertThrows(RuntimeException.class, () -> { + test.length(); + }); + } +} \ No newline at end of file diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionTest.java new file mode 100644 index 000000000000..6cd2559f5746 --- /dev/null +++ b/testing-modules/junit-5/src/test/java/com/baeldung/migration/junit4/ExceptionAssertionTest.java @@ -0,0 +1,24 @@ +package com.baeldung.migration.junit4; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.ExpectedException; + +public class ExceptionAssertionTest { + + @Rule + public ExpectedException exceptionRule = ExpectedException.none(); + + @Test(expected = NullPointerException.class) + public void whenExceptionThrown_thenExpectationSatisfied() { + String test = null; + test.length(); + } + + @Test + public void whenExceptionThrown_thenRuleIsApplied() { + exceptionRule.expect(NumberFormatException.class); + exceptionRule.expectMessage("For input string"); + Integer.parseInt("1a"); + } +}