add MODULE_WORKING_DIR to system macros to avoid "undefined path variables" notification

do not use "file:" prefix to JUnit/TestNG RC working dir value
This commit is contained in:
Vladimir Krivosheev
2018-05-04 16:30:57 +02:00
parent a89948fa0c
commit 57d641cc17
5 changed files with 10 additions and 4 deletions
@@ -23,7 +23,8 @@ public class PathMacroUtil {
@NonNls public static final String MODULE_DIR_MACRO_NAME = "MODULE_DIR";
public static final String DEPRECATED_MODULE_DIR = "$" + MODULE_DIR_MACRO_NAME + "$";
public static final String MODULE_WORKING_DIR = "$MODULE_WORKING_DIR$";
public static final String MODULE_WORKING_DIR_NAME = "MODULE_WORKING_DIR";
public static final String MODULE_WORKING_DIR = "$" + MODULE_WORKING_DIR_NAME + "$";
@NonNls public static final String DIRECTORY_STORE_NAME = ".idea";
@NonNls public static final String APPLICATION_HOME_DIR = "APPLICATION_HOME_DIR";
@@ -46,6 +46,7 @@ public class PathMacrosImpl extends PathMacros implements PersistentStateCompone
SYSTEM_MACROS.add(PathMacroUtil.APPLICATION_HOME_DIR);
SYSTEM_MACROS.add(PathMacroUtil.APPLICATION_PLUGINS_DIR);
SYSTEM_MACROS.add(PathMacroUtil.PROJECT_DIR_MACRO_NAME);
SYSTEM_MACROS.add(PathMacroUtil.MODULE_WORKING_DIR_NAME);
SYSTEM_MACROS.add(PathMacroUtil.MODULE_DIR_MACRO_NAME);
SYSTEM_MACROS.add(PathMacroUtil.USER_HOME_NAME);
}
@@ -1,8 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.openapi.components.impl
import com.intellij.openapi.components.PathMacroSubstitutor
import com.intellij.openapi.components.TrackingPathMacroSubstitutor
import com.intellij.openapi.diagnostic.Logger
import com.intellij.openapi.diagnostic.debug
import com.intellij.util.containers.MultiMap
import com.intellij.util.containers.SmartHashSet
import com.intellij.util.containers.isNullOrEmpty
@@ -59,7 +61,7 @@ internal class TrackingPathMacroSubstitutorImpl(private val macroManager: BasePa
return
}
LOG.debug("Registering unknown macros ${unknownMacros.joinToString(", ")} in component $componentName")
LOG.debug { "Registering unknown macros ${unknownMacros.joinToString(", ")} in component $componentName" }
synchronized(lock) {
for (unknownMacro in unknownMacros) {
@@ -25,6 +25,7 @@ import com.intellij.openapi.options.SettingsEditorGroup;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.*;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.io.FileUtilRt;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.*;
import com.intellij.psi.util.ClassUtil;
@@ -673,7 +674,7 @@ public class JUnitConfiguration extends JavaTestConfigurationBase {
}
public void setWorkingDirectory(String value) {
WORKING_DIRECTORY = ExternalizablePath.urlValue(value);
WORKING_DIRECTORY = StringUtil.isEmptyOrSpaces(value) ? "" : FileUtilRt.toSystemIndependentName(value.trim());
}
public void setUniqueIds(String... uniqueId) {
@@ -9,6 +9,7 @@ import com.intellij.execution.junit2.info.MethodLocation;
import com.intellij.execution.testframework.TestSearchScope;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.util.Comparing;
import com.intellij.openapi.util.io.FileUtilRt;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiMethod;
@@ -100,7 +101,7 @@ public class TestData implements Cloneable
}
public void setWorkingDirectory(String value) {
WORKING_DIRECTORY = ExternalizablePath.urlValue(value);
WORKING_DIRECTORY = StringUtil.isEmptyOrSpaces(value) ? "" : FileUtilRt.toSystemIndependentName(value.trim());
}
public String getWorkingDirectory() {