Convert tests for Validate.isAssignable overloads to @Nested test

Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/0b14928e
Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/0b14928e
Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/0b14928e

Branch: refs/heads/master
Commit: 0b14928ee447a59f69bcaa87051af62300c72c84
Parents: 3e58ab3
Author: Benedikt Ritter <brit...@apache.org>
Authored: Thu Sep 6 20:19:14 2018 +0200
Committer: Benedikt Ritter <brit...@apache.org>
Committed: Thu Sep 6 20:19:14 2018 +0200

----------------------------------------------------------------------
 .../org/apache/commons/lang3/ValidateTest.java  | 57 ++++++++++++--------
 1 file changed, 34 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-lang/blob/0b14928e/src/test/java/org/apache/commons/lang3/ValidateTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/lang3/ValidateTest.java 
b/src/test/java/org/apache/commons/lang3/ValidateTest.java
index 3f5fe6a..4103386 100644
--- a/src/test/java/org/apache/commons/lang3/ValidateTest.java
+++ b/src/test/java/org/apache/commons/lang3/ValidateTest.java
@@ -1843,32 +1843,43 @@ class ValidateTest {
         }
     }
 
-    @Test
-    void testIsAssignable() {
-        Validate.isAssignableFrom(CharSequence.class, String.class);
-        Validate.isAssignableFrom(AbstractList.class, ArrayList.class);
-    }
+    @Nested
+    class IsAssignable {
 
-    @Test
-    void testIsAssignableExceptionMessage() {
-        try {
-            Validate.isAssignableFrom(List.class, String.class);
-            fail("Expecting IllegalArgumentException");
-        } catch (final IllegalArgumentException e) {
-            assertEquals("Cannot assign a java.lang.String to a 
java.util.List", e.getMessage());
+        @Nested
+        class WithoutMessage {
+
+            @Test
+            void shouldNotThrowExceptionWhenClassIsAssignable() {
+                Validate.isAssignableFrom(CharSequence.class, String.class);
+            }
+
+            @Test
+            void 
shouldThrowIllegalArgumentExceptionWithDefaultMessageWhenClassIsNotAssignable() 
{
+                final IllegalArgumentException ex = assertThrows(
+                        IllegalArgumentException.class,
+                        () -> Validate.isAssignableFrom(List.class, 
String.class));
+
+                assertEquals("Cannot assign a java.lang.String to a 
java.util.List", ex.getMessage());
+            }
         }
-    }
 
-    @Test
-    void testIsAssignable_withMessage() {
-        Validate.isAssignableFrom(CharSequence.class, String.class, "Error");
-        Validate.isAssignableFrom(AbstractList.class, ArrayList.class, 
"Error");
-        try {
-            Validate.isAssignableFrom(List.class, String.class, "Error");
-            fail("Expecting IllegalArgumentException");
-        } catch (final IllegalArgumentException e) {
-            assertEquals("Error", e.getMessage());
+        @Nested
+        class WithMessage {
+
+            @Test
+            void shouldNotThrowExceptionWhenClassIsAssignable() {
+                Validate.isAssignableFrom(CharSequence.class, String.class, 
"MSG");
+            }
+
+            @Test
+            void 
shouldThrowIllegalArgumentExceptionWithGiventMessageWhenClassIsNotAssignable() {
+                final IllegalArgumentException ex = assertThrows(
+                        IllegalArgumentException.class,
+                        () -> Validate.isAssignableFrom(List.class, 
String.class, "MSG"));
+
+                assertEquals("MSG", ex.getMessage());
+            }
         }
     }
-
 }

Reply via email to