Index: trunk/test/data/sessions/data.geojson
===================================================================
--- trunk/test/data/sessions/data.geojson	(revision 18807)
+++ trunk/test/data/sessions/data.geojson	(revision 18807)
@@ -0,0 +1,10 @@
+{
+  "type": "Feature",
+  "geometry": {
+    "type": "Point",
+    "coordinates": [1, 2]
+  },
+  "properties": {
+    "name": "Test point"
+  }
+}
Index: trunk/test/data/sessions/geojson.jos
===================================================================
--- trunk/test/data/sessions/geojson.jos	(revision 18807)
+++ trunk/test/data/sessions/geojson.jos	(revision 18807)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<josm-session version="0.1">
+    <viewport>
+        <center lat="0.0" lon="0.0"/>
+        <scale meter-per-pixel="10"/>
+    </viewport>
+    <layers>
+        <layer index="1" name="Geojson layer name" type="osm-data" version="0.1" visible="true">
+            <file>data.geojson</file>
+        </layer>
+    </layers>
+</josm-session>
Index: trunk/test/unit/org/openstreetmap/josm/actions/SessionLoadActionTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/actions/SessionLoadActionTest.java	(revision 18806)
+++ trunk/test/unit/org/openstreetmap/josm/actions/SessionLoadActionTest.java	(revision 18807)
@@ -4,25 +4,17 @@
 import static org.junit.jupiter.api.Assertions.assertFalse;
 
-import org.junit.jupiter.api.extension.RegisterExtension;
 import org.junit.jupiter.api.Test;
 import org.openstreetmap.josm.data.imagery.ImageryInfo;
 import org.openstreetmap.josm.data.imagery.ImageryInfo.ImageryType;
 import org.openstreetmap.josm.gui.layer.TMSLayer;
-import org.openstreetmap.josm.testutils.JOSMTestRules;
-
-import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+import org.openstreetmap.josm.testutils.annotations.Main;
+import org.openstreetmap.josm.testutils.annotations.Projection;
 
 /**
  * Unit tests for class {@link SessionLoadAction}.
  */
+@Main
+@Projection
 class SessionLoadActionTest {
-
-    /**
-     * Setup test.
-     */
-    @RegisterExtension
-    @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
-    public JOSMTestRules test = new JOSMTestRules().main().projection();
-
     /**
      * Non-regression test for <a href="https://josm.openstreetmap.de/ticket/17702">Bug #17702</a>.
Index: trunk/test/unit/org/openstreetmap/josm/io/session/SessionReaderTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/io/session/SessionReaderTest.java	(revision 18806)
+++ trunk/test/unit/org/openstreetmap/josm/io/session/SessionReaderTest.java	(revision 18807)
@@ -15,8 +15,8 @@
 import java.util.List;
 
-import org.junit.jupiter.api.extension.RegisterExtension;
 import org.junit.jupiter.api.Test;
 import org.openstreetmap.josm.TestUtils;
 import org.openstreetmap.josm.data.coor.EastNorth;
+import org.openstreetmap.josm.data.osm.Node;
 import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.layer.AbstractTileSourceLayer;
@@ -28,20 +28,11 @@
 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
 import org.openstreetmap.josm.io.IllegalDataException;
-import org.openstreetmap.josm.testutils.JOSMTestRules;
-
-import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+import org.openstreetmap.josm.testutils.annotations.Projection;
 
 /**
  * Unit tests for Session reading.
  */
+@Projection
 class SessionReaderTest {
-
-    /**
-     * Setup tests.
-     */
-    @RegisterExtension
-    @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
-    public JOSMTestRules test = new JOSMTestRules().projection();
-
     private static String getSessionDataDir() {
         return TestUtils.getTestDataRoot() + "/sessions";
@@ -161,4 +152,17 @@
     }
 
+    @Test
+    void testReadGeojson() throws IOException, IllegalDataException {
+        final List<Layer> layers = testRead("geojson.jos");
+        assertEquals(1, layers.size());
+        final OsmDataLayer osmDataLayer = assertInstanceOf(OsmDataLayer.class, layers.get(0));
+        assertEquals("Geojson layer name", osmDataLayer.getName());
+        assertEquals(1, osmDataLayer.getDataSet().allPrimitives().size());
+        final Node node = assertInstanceOf(Node.class, osmDataLayer.getDataSet().allPrimitives().iterator().next());
+        assertEquals(2d, node.lat(), 1e-9);
+        assertEquals(1d, node.lon(), 1e-9);
+        assertEquals("Test point", node.get("name"));
+    }
+
     /**
      * Non-regression test for <a href="https://josm.openstreetmap.de/ticket/17701">Bug #17701</a>.
