Index: /applications/editors/josm/plugins/pt_assistant/.classpath
===================================================================
--- /applications/editors/josm/plugins/pt_assistant/.classpath	(revision 33411)
+++ /applications/editors/josm/plugins/pt_assistant/.classpath	(revision 33412)
@@ -2,4 +2,5 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
+	<classpathentry including="GPL-v2.0.txt|GPL-v3.0.txt|LICENSE|README|data/|images/|resources/" kind="src" path=""/>
 	<classpathentry kind="src" path="test/unit"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
Index: /applications/editors/josm/plugins/pt_assistant/test/unit/org/openstreetmap/josm/plugins/pt_assistant/actions/SplitRoundaboutTest.java
===================================================================
--- /applications/editors/josm/plugins/pt_assistant/test/unit/org/openstreetmap/josm/plugins/pt_assistant/actions/SplitRoundaboutTest.java	(revision 33411)
+++ /applications/editors/josm/plugins/pt_assistant/test/unit/org/openstreetmap/josm/plugins/pt_assistant/actions/SplitRoundaboutTest.java	(revision 33412)
@@ -8,13 +8,14 @@
 import java.io.FileNotFoundException;
 import java.util.Collection;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
-import org.junit.After;
 import org.junit.Before;
+import org.junit.Rule;
 import org.junit.Test;
-import org.openstreetmap.josm.JOSMFixture;
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.actions.SplitWayAction;
+import org.openstreetmap.josm.actions.SplitWayAction.SplitWayResult;
 import org.openstreetmap.josm.data.osm.DataSet;
 import org.openstreetmap.josm.data.osm.Node;
@@ -27,18 +28,21 @@
 import org.openstreetmap.josm.io.OsmReader;
 import org.openstreetmap.josm.plugins.pt_assistant.AbstractTest;
+import org.openstreetmap.josm.testutils.JOSMTestRules;
 
 public class SplitRoundaboutTest extends AbstractTest {
 
-    DataSet ds;
-    OsmDataLayer layer;
-    SplitRoundaboutAction action;
-    SplitWayAction swa;
-    Way r1, r2, r3;
+    /**
+     * Setup test.
+     */
+    @Rule
+    public JOSMTestRules rules = new JOSMTestRules().preferences().platform();
+
+    private DataSet ds;
+    private OsmDataLayer layer;
+    private SplitRoundaboutAction action;
+    private Way r1, r2, r3;
 
     @Before
     public void init() throws FileNotFoundException, IllegalDataException {
-
-        new JOSMFixture("../../JOSM/test/config/unit-josm.home").init(true);
-
         ds = OsmReader.parseDataSet(new FileInputStream(AbstractTest.PATH_TO_ROUNDABOUT), null);
         layer = new OsmDataLayer(ds, OsmDataLayer.createNewName(), null);
@@ -47,6 +51,4 @@
         Main.pref.put("pt_assistant.roundabout-splitter.alignalways", true);
         action = new SplitRoundaboutAction();
-        swa = Main.main.menu.splitWay;
-        swa.setEnabled(true);
         r1 = (Way) ds.getPrimitiveById(new SimplePrimitiveId(293302077L, OsmPrimitiveType.WAY));
         r2 = (Way) ds.getPrimitiveById(new SimplePrimitiveId(205833435L, OsmPrimitiveType.WAY));
@@ -54,17 +56,18 @@
     }
 
+    private Collection<Way> splitWay(Way w) {
+        Map<Relation, Integer> savedPositions = action.getSavedPositions(w);
+        List<Node> splitNodes = action.getSplitNodes(w);
+        assertEquals(4, splitNodes.size());
+        SplitWayResult result = SplitWayAction.split(layer, w, splitNodes, Collections.emptyList());
+        result.getCommand().executeCommand();
+        Collection<Way> splitWays = result.getNewWays();
+        action.updateRelations(savedPositions, splitNodes, splitWays);
+        return splitWays;
+    }
+
     @Test
     public void test1() {
-
-        Map<Relation, Integer> savedPositions = action.getSavedPositions(r1);
-        List<Node> splitNodes = action.getSplitNodes(r1);
-        assertEquals(4, splitNodes.size());
-        ds.setSelected(splitNodes);
-        swa.actionPerformed(null);
-
-        Collection<Way> splitWays = ds.getSelectedWays();
-        action.updateRelations(savedPositions, splitNodes, splitWays);
-
-        splitWays.forEach(w -> {
+        splitWay(r1).forEach(w -> {
                 if (w.firstNode().getUniqueId() == 267843779L && w.lastNode().getUniqueId() == 2968718407L)
                 assertEquals(w.getReferrers().size(), 5);
@@ -80,16 +83,7 @@
     }
 
-     @Test
-     public void test2() {
-        Map<Relation, Integer> savedPositions = action.getSavedPositions(r2);
-        List<Node> splitNodes = action.getSplitNodes(r2);
-        assertEquals(4, splitNodes.size());
-        ds.setSelected(splitNodes);
-        swa.actionPerformed(null);
-
-        Collection<Way> splitWays = ds.getSelectedWays();
-        action.updateRelations(savedPositions, splitNodes, splitWays);
-
-        splitWays.forEach(w -> {
+    @Test
+    public void test2() {
+        splitWay(r2).forEach(w -> {
             if(w.firstNode().getUniqueId() == 2158181809L && w.lastNode().getUniqueId() == 2158181798L)
                 assertEquals(w.getReferrers().size(), 8);
@@ -103,18 +97,9 @@
                 fail();
         });
-     }
+    }
 
-     @Test
-     public void test3() {
-         Map<Relation, Integer> savedPositions = action.getSavedPositions(r3);
-        List<Node> splitNodes = action.getSplitNodes(r3);
-        assertEquals(4, splitNodes.size());
-        ds.setSelected(splitNodes);
-        swa.actionPerformed(null);
-
-        Collection<Way> splitWays = ds.getSelectedWays();
-        action.updateRelations(savedPositions, splitNodes, splitWays);
-
-        splitWays.forEach(w -> {
+    @Test
+    public void test3() {
+        splitWay(r3).forEach(w -> {
             if(w.firstNode().getUniqueId() == 280697532L && w.lastNode().getUniqueId() == 280697452L)
                 assertEquals(w.getReferrers().size(), 0);
@@ -128,9 +113,4 @@
                 fail();
         });
-     }
-
-    @After
-    public void end() {
-        Main.getLayerManager().removeLayer(layer);
     }
 }
