|
23 | 23 | import java.util.HashMap; |
24 | 24 | import java.util.Map; |
25 | 25 |
|
| 26 | +import org.eclipse.core.runtime.preferences.IEclipsePreferences; |
| 27 | +import org.eclipse.core.runtime.preferences.InstanceScope; |
| 28 | +import org.eclipse.jdt.ls.core.internal.IConstants; |
26 | 29 | import org.eclipse.jdt.ls.core.internal.handlers.CompletionGuessMethodArgumentsMode; |
27 | 30 | import org.junit.Test; |
28 | 31 |
|
@@ -304,4 +307,35 @@ public void testMavenLifecycleMappings() { |
304 | 307 | assertNotNull(updated.getMavenLifecycleMappings()); |
305 | 308 | } |
306 | 309 |
|
| 310 | + @Test |
| 311 | + public void testMavenDisableTestClasspathFlag() { |
| 312 | + PreferenceManager preferenceManager = new StandardPreferenceManager(); |
| 313 | + IEclipsePreferences prefs = InstanceScope.INSTANCE.getNode(IConstants.PLUGIN_ID); |
| 314 | + boolean mavenDisableTestClasspathFlag = prefs.getBoolean(StandardPreferenceManager.M2E_DISABLE_TEST_CLASSPATH_FLAG, false); |
| 315 | + try { |
| 316 | + assertFalse(mavenDisableTestClasspathFlag); |
| 317 | + Map<String, Object> configMap = new HashMap<>(); |
| 318 | + Map<String, Object> java = new HashMap<>(); |
| 319 | + configMap.put("java", java); |
| 320 | + // java.import.maven.disableTestClasspathFlag |
| 321 | + java.put("import", Map.of("maven", Map.of("disableTestClasspathFlag", true))); |
| 322 | + Preferences preferences = Preferences.createFrom(configMap); |
| 323 | + preferenceManager.update(preferences); |
| 324 | + assertTrue(preferences.isMavenDisableTestClasspathFlag()); |
| 325 | + mavenDisableTestClasspathFlag = prefs.getBoolean(StandardPreferenceManager.M2E_DISABLE_TEST_CLASSPATH_FLAG, false); |
| 326 | + assertTrue(mavenDisableTestClasspathFlag); |
| 327 | + java = new HashMap<>(); |
| 328 | + configMap.put("java", java); |
| 329 | + // java.import.maven.disableTestClasspathFlag |
| 330 | + java.put("import", Map.of("maven", Map.of("disableTestClasspathFlag", false))); |
| 331 | + preferences = Preferences.createFrom(configMap); |
| 332 | + preferenceManager.update(preferences); |
| 333 | + assertFalse(preferences.isMavenDisableTestClasspathFlag()); |
| 334 | + mavenDisableTestClasspathFlag = prefs.getBoolean(StandardPreferenceManager.M2E_DISABLE_TEST_CLASSPATH_FLAG, false); |
| 335 | + assertFalse(mavenDisableTestClasspathFlag); |
| 336 | + } finally { |
| 337 | + prefs.putBoolean(StandardPreferenceManager.M2E_DISABLE_TEST_CLASSPATH_FLAG, mavenDisableTestClasspathFlag); |
| 338 | + } |
| 339 | + } |
| 340 | + |
307 | 341 | } |
0 commit comments