Index: trunk/test/unit/org/openstreetmap/josm/command/AddCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/AddCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/AddCommandTest.java	(revision 9337)
@@ -0,0 +1,31 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.Node;
+import org.openstreetmap.josm.data.osm.OsmPrimitive;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link AddCommand} class.
+ */
+public class AddCommandTest {
+
+    /**
+     * Unit test of methods {@link AddCommand#equals} and {@link AddCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(AddCommand.class).usingGetClass()
+            .withPrefabValues(OsmPrimitive.class,
+                new Node(1), new Node(2))
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/AddPrimitivesCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/AddPrimitivesCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/AddPrimitivesCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link AddPrimitivesCommand} class.
+ */
+public class AddPrimitivesCommandTest {
+
+    /**
+     * Unit test of methods {@link AddPrimitivesCommand#equals} and {@link AddPrimitivesCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(AddPrimitivesCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/ChangeCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/ChangeCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/ChangeCommandTest.java	(revision 9337)
@@ -0,0 +1,31 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.Node;
+import org.openstreetmap.josm.data.osm.OsmPrimitive;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link ChangeCommand} class.
+ */
+public class ChangeCommandTest {
+
+    /**
+     * Unit test of methods {@link ChangeCommand#equals} and {@link ChangeCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(ChangeCommand.class).usingGetClass()
+            .withPrefabValues(OsmPrimitive.class,
+                new Node(1), new Node(2))
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/ChangeNodesCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/ChangeNodesCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/ChangeNodesCommandTest.java	(revision 9337)
@@ -0,0 +1,30 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.Way;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link ChangeNodesCommand} class.
+ */
+public class ChangeNodesCommandTest {
+
+    /**
+     * Unit test of methods {@link ChangeNodesCommand#equals} and {@link ChangeNodesCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(ChangeNodesCommand.class).usingGetClass()
+            .withPrefabValues(Way.class,
+                new Way(1), new Way(2))
+            .withPrefabValues(OsmDataLayer.class,
+                    new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/ChangePropertyCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/ChangePropertyCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/ChangePropertyCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link ChangePropertyCommand} class.
+ */
+public class ChangePropertyCommandTest {
+
+    /**
+     * Unit test of methods {@link ChangePropertyCommand#equals} and {@link ChangePropertyCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(ChangePropertyCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/ChangePropertyKeyCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/ChangePropertyKeyCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/ChangePropertyKeyCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link ChangePropertyKeyCommand} class.
+ */
+public class ChangePropertyKeyCommandTest {
+
+    /**
+     * Unit test of methods {@link ChangePropertyKeyCommand#equals} and {@link ChangePropertyKeyCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(ChangePropertyKeyCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/ChangeRelationMemberRoleCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/ChangeRelationMemberRoleCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/ChangeRelationMemberRoleCommandTest.java	(revision 9337)
@@ -0,0 +1,30 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.Relation;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link ChangeRelationMemberRoleCommand} class.
+ */
+public class ChangeRelationMemberRoleCommandTest {
+
+    /**
+     * Unit test of methods {@link ChangeRelationMemberRoleCommand#equals} and {@link ChangeRelationMemberRoleCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(ChangeRelationMemberRoleCommand.class).usingGetClass()
+            .withPrefabValues(Relation.class,
+                new Relation(1), new Relation(2))
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/CommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/CommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/CommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link Command} class.
+ */
+public class CommandTest {
+
+    /**
+     * Unit test of methods {@link Command#equals} and {@link Command#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(Command.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/DeleteCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/DeleteCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/DeleteCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link DeleteCommand} class.
+ */
+public class DeleteCommandTest {
+
+    /**
+     * Unit test of methods {@link DeleteCommand#equals} and {@link DeleteCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(DeleteCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/MoveCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/MoveCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/MoveCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link MoveCommand} class.
+ */
+public class MoveCommandTest {
+
+    /**
+     * Unit test of methods {@link MoveCommand#equals} and {@link MoveCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(MoveCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/PurgeCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/PurgeCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/PurgeCommandTest.java	(revision 9337)
@@ -0,0 +1,34 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.Hash;
+import org.openstreetmap.josm.data.osm.OsmPrimitive;
+import org.openstreetmap.josm.data.osm.Storage;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link PurgeCommand} class.
+ */
+public class PurgeCommandTest {
+
+    /**
+     * Unit test of methods {@link PurgeCommand#equals} and {@link PurgeCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(PurgeCommand.class).usingGetClass()
+            .withPrefabValues(DataSet.class,
+                new DataSet(), new DataSet())
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .withPrefabValues(Hash.class,
+                Storage.<OsmPrimitive>defaultHash(), Storage.<OsmPrimitive>defaultHash())
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/RemoveNodesCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/RemoveNodesCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/RemoveNodesCommandTest.java	(revision 9337)
@@ -0,0 +1,40 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openstreetmap.josm.JOSMFixture;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.Way;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link RemoveNodesCommand} class.
+ */
+public class RemoveNodesCommandTest {
+
+    /**
+     * Setup test.
+     */
+    @BeforeClass
+    public static void setUpBeforeClass() {
+        JOSMFixture.createUnitTestFixture().init(false);
+    }
+
+    /**
+     * Unit test of methods {@link RemoveNodesCommand#equals} and {@link RemoveNodesCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(RemoveNodesCommand.class).usingGetClass()
+            .withPrefabValues(Way.class,
+                new Way(1), new Way(2))
+            .withPrefabValues(OsmDataLayer.class,
+                    new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/RotateCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/RotateCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/RotateCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link RotateCommand} class.
+ */
+public class RotateCommandTest {
+
+    /**
+     * Unit test of methods {@link RotateCommand#equals} and {@link RotateCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(RotateCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/ScaleCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/ScaleCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/ScaleCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link ScaleCommand} class.
+ */
+public class ScaleCommandTest {
+
+    /**
+     * Unit test of methods {@link ScaleCommand#equals} and {@link ScaleCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(ScaleCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/SelectCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/SelectCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/SelectCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link SelectCommand} class.
+ */
+public class SelectCommandTest {
+
+    /**
+     * Unit test of methods {@link SelectCommand#equals} and {@link SelectCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(SelectCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/SequenceCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/SequenceCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/SequenceCommandTest.java	(revision 9337)
@@ -0,0 +1,30 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.Node;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link SequenceCommand} class.
+ */
+public class SequenceCommandTest {
+
+    /**
+     * Unit test of methods {@link SequenceCommand#equals} and {@link SequenceCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(SequenceCommand.class).usingGetClass()
+            .withPrefabValues(Command.class,
+                new AddCommand(new Node(1)), new AddCommand(new Node(2)))
+            .withPrefabValues(OsmDataLayer.class,
+                    new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
Index: trunk/test/unit/org/openstreetmap/josm/command/TransformNodesCommandTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/command/TransformNodesCommandTest.java	(revision 9337)
+++ trunk/test/unit/org/openstreetmap/josm/command/TransformNodesCommandTest.java	(revision 9337)
@@ -0,0 +1,27 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.command;
+
+import org.junit.Test;
+import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+
+import nl.jqno.equalsverifier.EqualsVerifier;
+import nl.jqno.equalsverifier.Warning;
+
+/**
+ * Unit tests of {@link TransformNodesCommand} class.
+ */
+public class TransformNodesCommandTest {
+
+    /**
+     * Unit test of methods {@link TransformNodesCommand#equals} and {@link TransformNodesCommand#hashCode}.
+     */
+    @Test
+    public void equalsContract() {
+        EqualsVerifier.forClass(TransformNodesCommand.class).usingGetClass()
+            .withPrefabValues(OsmDataLayer.class,
+                new OsmDataLayer(new DataSet(), "1", null), new OsmDataLayer(new DataSet(), "2", null))
+            .suppress(Warning.NONFINAL_FIELDS)
+            .verify();
+    }
+}
