Index: trunk/test/unit/org/openstreetmap/josm/data/validation/tests/TagCheckerTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/data/validation/tests/TagCheckerTest.java	(revision 18935)
+++ trunk/test/unit/org/openstreetmap/josm/data/validation/tests/TagCheckerTest.java	(revision 18958)
@@ -20,4 +20,5 @@
 import org.openstreetmap.josm.data.validation.Severity;
 import org.openstreetmap.josm.data.validation.TestError;
+import org.openstreetmap.josm.testutils.annotations.I18n;
 import org.openstreetmap.josm.testutils.annotations.TaggingPresets;
 
@@ -25,4 +26,5 @@
  * JUnit Test of {@link TagChecker}.
  */
+@I18n
 @TaggingPresets
 class TagCheckerTest {
Index: trunk/test/unit/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayerTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayerTest.java	(revision 18935)
+++ trunk/test/unit/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayerTest.java	(revision 18958)
@@ -24,4 +24,5 @@
 import org.openstreetmap.josm.spi.preferences.Config;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.I18n;
 import org.openstreetmap.josm.testutils.annotations.Main;
 import org.openstreetmap.josm.testutils.annotations.Projection;
@@ -33,4 +34,5 @@
 @Main
 @Projection
+@I18n
 class MarkerLayerTest {
     /**
Index: trunk/test/unit/org/openstreetmap/josm/gui/tagging/presets/PresetClassificationsTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/gui/tagging/presets/PresetClassificationsTest.java	(revision 18935)
+++ trunk/test/unit/org/openstreetmap/josm/gui/tagging/presets/PresetClassificationsTest.java	(revision 18958)
@@ -20,4 +20,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetSelector.PresetClassification;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetSelector.PresetClassifications;
+import org.openstreetmap.josm.testutils.annotations.Territories;
 import org.xml.sax.SAXException;
 
@@ -25,4 +26,5 @@
  * Unit tests of {@link PresetClassifications} class.
  */
+@Territories
 class PresetClassificationsTest {
 
Index: trunk/test/unit/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetReaderTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetReaderTest.java	(revision 18935)
+++ trunk/test/unit/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetReaderTest.java	(revision 18958)
@@ -18,4 +18,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.items.Check;
 import org.openstreetmap.josm.gui.tagging.presets.items.Key;
+import org.openstreetmap.josm.testutils.annotations.Territories;
 import org.xml.sax.SAXException;
 
@@ -77,4 +78,5 @@
      * @throws IOException if any I/O error occurs
      */
+    @Territories
     @Test
     void testReadDefaultPresets() throws SAXException, IOException {
Index: trunk/test/unit/org/openstreetmap/josm/testutils/annotations/I18n.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/testutils/annotations/I18n.java	(revision 18935)
+++ trunk/test/unit/org/openstreetmap/josm/testutils/annotations/I18n.java	(revision 18958)
@@ -46,4 +46,9 @@
             if (!Locale.getDefault().equals(LanguageInfo.getLocale(language, false))) {
                 org.openstreetmap.josm.tools.I18n.set(language);
+                // We want to have a consistent "country", so we don't use a locale with a country code from the original locale.
+                // Unless someone specified it via the <lang>_<country> syntax.
+                if (!language.contains("_")) {
+                    Locale.setDefault(LanguageInfo.getLocale(language, false));
+                }
             }
         }
@@ -51,8 +56,10 @@
         @Override
         public void afterEach(ExtensionContext context) {
-            if (!Locale.ENGLISH.equals(Locale.getDefault())) {
+            Locale original = org.openstreetmap.josm.tools.I18n.getOriginalLocale();
+            if (original == null) {
                 org.openstreetmap.josm.tools.I18n.set("en");
-                org.openstreetmap.josm.tools.I18n.set(org.openstreetmap.josm.tools.I18n.getOriginalLocale().getLanguage());
-                Locale.setDefault(Locale.ENGLISH);
+            } else if (!original.equals(Locale.getDefault())) {
+                org.openstreetmap.josm.tools.I18n.set(original.getLanguage());
+                Locale.setDefault(original);
             }
         }
Index: trunk/test/unit/org/openstreetmap/josm/testutils/annotations/TaggingPresets.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/testutils/annotations/TaggingPresets.java	(revision 18935)
+++ trunk/test/unit/org/openstreetmap/josm/testutils/annotations/TaggingPresets.java	(revision 18958)
@@ -8,4 +8,6 @@
 import java.lang.annotation.Target;
 import java.util.Collection;
+import java.util.Locale;
+import java.util.Objects;
 
 import org.junit.jupiter.api.extension.BeforeAllCallback;
@@ -32,4 +34,5 @@
     class TaggingPresetsExtension implements BeforeEachCallback, BeforeAllCallback {
         private static int expectedHashcode = 0;
+        private static Locale lastLocale;
 
         @Override
@@ -48,7 +51,8 @@
         public static synchronized void setup() {
             final Collection<TaggingPreset> oldPresets = org.openstreetmap.josm.gui.tagging.presets.TaggingPresets.getTaggingPresets();
-            if (oldPresets.isEmpty() || expectedHashcode != oldPresets.hashCode()) {
+            if (oldPresets.isEmpty() || expectedHashcode != oldPresets.hashCode() || !Objects.equals(lastLocale, Locale.getDefault())) {
                 org.openstreetmap.josm.gui.tagging.presets.TaggingPresets.readFromPreferences();
                 expectedHashcode = org.openstreetmap.josm.gui.tagging.presets.TaggingPresets.getTaggingPresets().hashCode();
+                lastLocale = Locale.getDefault();
             }
         }
