mirror of
https://github.com/alibaba/testable-mock.git
synced 2025-03-25 01:00:24 +08:00
support custom inner mock class name
This commit is contained in:
parent
b8771f0dac
commit
0c063e9b1f
@ -20,7 +20,8 @@ public class PropertiesParser {
|
||||
private static final String LOG_LEVEL = "log.level";
|
||||
private static final String LOG_FILE = "log.file";
|
||||
private static final String DUMP_PATH = "dump.path";
|
||||
private static final String PKG_PREFIX_WHITELIST = "custom.pkgPrefix.whiteList";
|
||||
private static final String PKG_PREFIX_WHITELIST = "enhance.pkgPrefix.whiteList";
|
||||
private static final String INNER_MOCK_CLASS_NAME = "mock.innerClass.name";
|
||||
private static final String DEFAULT_MOCK_SCOPE = "mock.scope.default";
|
||||
private static final String ENABLE_THREAD_POOL = "thread.pool.enhance.enable";
|
||||
private static final String ENABLE_OMNI_INJECT = "omni.constructor.enhance.enable";
|
||||
@ -63,6 +64,8 @@ public class PropertiesParser {
|
||||
GlobalConfig.setEnhanceThreadLocal(Boolean.parseBoolean(v));
|
||||
} else if (k.equals(ENABLE_OMNI_INJECT)) {
|
||||
GlobalConfig.setEnhanceOmniConstructor(Boolean.parseBoolean(v));
|
||||
} else if (k.equals(INNER_MOCK_CLASS_NAME)) {
|
||||
GlobalConfig.setInnerMockClassName(v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -34,8 +34,6 @@ public class TestableClassTransformer implements ClassFileTransformer {
|
||||
|
||||
private static final String FIELD_VALUE = "value";
|
||||
private static final String FIELD_TREAT_AS = "treatAs";
|
||||
private static final String COMMA = ",";
|
||||
private static final String CLASS_NAME_MOCK = "Mock";
|
||||
|
||||
/**
|
||||
* Just avoid spend time to scan those surely non-user classes, should keep these lists as tiny as possible
|
||||
@ -260,7 +258,7 @@ public class TestableClassTransformer implements ClassFileTransformer {
|
||||
}
|
||||
|
||||
private String getInnerMockClassName(String className) {
|
||||
return className + DOLLAR + CLASS_NAME_MOCK;
|
||||
return className + DOLLAR + GlobalConfig.getInnerMockClassName();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -5,6 +5,8 @@ import com.alibaba.testable.core.model.MockScope;
|
||||
import com.alibaba.testable.core.util.LogUtil;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static com.alibaba.testable.agent.constant.ConstPool.PROPERTY_USER_DIR;
|
||||
import static com.alibaba.testable.core.util.PathUtil.createFolder;
|
||||
@ -18,15 +20,18 @@ public class GlobalConfig {
|
||||
private static final String DEBUG = "debug";
|
||||
private static final String VERBOSE = "verbose";
|
||||
private static final String DISABLE_LOG_FILE = "null";
|
||||
private static final String COMMA = ",";
|
||||
private static final String DOT = ".";
|
||||
|
||||
private static final String TESTABLE_AGENT_LOG = "testable-agent.log";
|
||||
|
||||
private static String logFile = null;
|
||||
private static String dumpPath = null;
|
||||
private static String pkgPrefix = null;
|
||||
private static List<String> pkgPrefixes = new ArrayList<String>();
|
||||
private static MockScope defaultMockScope = MockScope.GLOBAL;
|
||||
private static boolean enhanceThreadLocal = false;
|
||||
private static boolean enhanceOmniConstructor = false;
|
||||
private static String innerMockClassName = "Mock";
|
||||
|
||||
public static void setLogLevel(String level) {
|
||||
if (level.equals(MUTE)) {
|
||||
@ -53,12 +58,14 @@ public class GlobalConfig {
|
||||
}
|
||||
}
|
||||
|
||||
public static String getPkgPrefix() {
|
||||
return pkgPrefix;
|
||||
public static List<String> getPkgPrefixes() {
|
||||
return pkgPrefixes;
|
||||
}
|
||||
|
||||
public static void setPkgPrefix(String prefix) {
|
||||
pkgPrefix = prefix;
|
||||
public static void setPkgPrefixes(String prefixes) {
|
||||
for (String p : prefixes.split(COMMA)) {
|
||||
pkgPrefixes.add(p.endsWith(DOT) ? p : p + DOT);
|
||||
}
|
||||
}
|
||||
|
||||
public static MockScope getDefaultMockScope() {
|
||||
@ -96,4 +103,12 @@ public class GlobalConfig {
|
||||
public static boolean isEnhanceOmniConstructor() {
|
||||
return enhanceOmniConstructor;
|
||||
}
|
||||
|
||||
public static void setInnerMockClassName(String name) {
|
||||
innerMockClassName = name;
|
||||
}
|
||||
|
||||
public static String getInnerMockClassName() {
|
||||
return innerMockClassName;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user