From c1203e0cc92ba03f46e5656008629ecd547edce7 Mon Sep 17 00:00:00 2001 From: Paul Holser Date: Mon, 20 Jul 2020 09:45:28 -0500 Subject: [PATCH] Make FrameworkField ctor public. Fixes #1668 Prior to this change, custom runners could make `FrameworkMethod` instances, but not `FrameworkField` instances. This small change allows for both now, because `FrameworkField`'s constructor has been promoted to `public` from package-private. --- src/main/java/org/junit/runners/model/FrameworkField.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/junit/runners/model/FrameworkField.java b/src/main/java/org/junit/runners/model/FrameworkField.java index e99d05b46312..620cd84428c0 100644 --- a/src/main/java/org/junit/runners/model/FrameworkField.java +++ b/src/main/java/org/junit/runners/model/FrameworkField.java @@ -15,6 +15,11 @@ public class FrameworkField extends FrameworkMember { private final Field field; + /** + * Returns a new {@code FrameworkField} for {@code field}. + * + * Access relaxed to {@code public} since version 4.14. + */ FrameworkField(Field field) { if (field == null) { throw new NullPointerException( @@ -26,7 +31,7 @@ public class FrameworkField extends FrameworkMember { // This field could be a public field in a package-scope base class try { field.setAccessible(true); - } catch (SecurityException e) { + } catch (SecurityException e) { // We may get an IllegalAccessException when we try to access the field } }