From 81a52433b723abaedbe42b127cff6d583adbea5a Mon Sep 17 00:00:00 2001
From: Robert Scott <code@humanleg.org.uk>
Date: Sat, 13 Oct 2018 19:14:29 +0100
Subject: [PATCH v1 2/3] ExtendedDialogMocker: add getContent utility method to
 reduce boilerplate needed in test code

---
 .../josm/testutils/mockers/ExtendedDialogMocker.java         | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/test/unit/org/openstreetmap/josm/testutils/mockers/ExtendedDialogMocker.java b/test/unit/org/openstreetmap/josm/testutils/mockers/ExtendedDialogMocker.java
index e65e25c8a..b6ced5610 100644
--- a/test/unit/org/openstreetmap/josm/testutils/mockers/ExtendedDialogMocker.java
+++ b/test/unit/org/openstreetmap/josm/testutils/mockers/ExtendedDialogMocker.java
@@ -10,6 +10,7 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.WeakHashMap;
 
+import org.openstreetmap.josm.TestUtils;
 import org.openstreetmap.josm.gui.ExtendedDialog;
 import org.openstreetmap.josm.tools.Logging;
 
@@ -122,6 +123,17 @@ public class ExtendedDialogMocker extends BaseDialogMockUp<ExtendedDialog> {
         };
     }
 
+    /**
+     * A convenience method to access {@link ExtendedDialog#content} without exception-catching boilerplate
+     */
+    protected Component getContent(final ExtendedDialog instance) {
+        try {
+            return (Component) TestUtils.getPrivateField(instance, "content");
+        } catch (ReflectiveOperationException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
     @Mock
     private void setupDialog(final Invocation invocation) {
         if (!GraphicsEnvironment.isHeadless()) {
-- 
2.11.0

