Skip to content

Commit

Permalink
Issue checkstyle#10745: Renamed TestInputConfiguration to ModuleInput…
Browse files Browse the repository at this point in the history
…Configuration
  • Loading branch information
shashwatj07 committed Aug 28, 2021
1 parent 0d8c5b6 commit 67d63d2
Show file tree
Hide file tree
Showing 3 changed files with 65 additions and 62 deletions.
Expand Up @@ -44,7 +44,7 @@
import com.puppycrawl.tools.checkstyle.api.Configuration;
import com.puppycrawl.tools.checkstyle.api.Violation;
import com.puppycrawl.tools.checkstyle.bdd.InlineConfigParser;
import com.puppycrawl.tools.checkstyle.bdd.TestInputConfiguration;
import com.puppycrawl.tools.checkstyle.bdd.ModuleInputConfiguration;
import com.puppycrawl.tools.checkstyle.bdd.TestInputViolation;
import com.puppycrawl.tools.checkstyle.internal.utils.BriefUtLogger;
import com.puppycrawl.tools.checkstyle.internal.utils.TestUtil;
Expand Down Expand Up @@ -221,19 +221,20 @@ protected final void verifyFilterWithInlineConfigParser(Configuration aConfig,
String filePath, String[] expectedUnfiltered,
String... expectedFiltered)
throws Exception {
final TestInputConfiguration checkTestInputConfiguration =
final ModuleInputConfiguration checkModuleInputConfiguration =
InlineConfigParser.parseWithFilteredViolations(filePath);
final Configuration parsedCheckConfig = checkTestInputConfiguration.createConfiguration();
verifyConfig(aConfig, parsedCheckConfig, checkTestInputConfiguration);
verifyViolations(parsedCheckConfig, filePath, checkTestInputConfiguration);
final Configuration parsedCheckConfig = checkModuleInputConfiguration.createConfiguration();
verifyConfig(aConfig, parsedCheckConfig, checkModuleInputConfiguration);
verifyViolations(parsedCheckConfig, filePath, checkModuleInputConfiguration);
verify(parsedCheckConfig, filePath, expectedUnfiltered);
final TestInputConfiguration filterTestInputConfiguration =
final ModuleInputConfiguration filterModuleInputConfiguration =
InlineConfigParser.parseFilter(filePath);
final Configuration parsedFilterConfig = filterTestInputConfiguration.createConfiguration();
verifyConfig(filterConfig, parsedFilterConfig, filterTestInputConfiguration);
final Configuration parsedFilterConfig =
filterModuleInputConfiguration.createConfiguration();
verifyConfig(filterConfig, parsedFilterConfig, filterModuleInputConfiguration);
final DefaultConfiguration rootConfig = createRootConfig(parsedCheckConfig);
rootConfig.addChild(parsedFilterConfig);
verifyViolations(rootConfig, filePath, filterTestInputConfiguration);
verifyViolations(rootConfig, filePath, filterModuleInputConfiguration);
verify(rootConfig, filePath, expectedFiltered);
}

Expand All @@ -250,11 +251,11 @@ protected final void verifyFilterWithInlineConfigParser(Configuration aConfig,
protected final void verifyWithInlineConfigParser(Configuration aConfig,
String filePath, String... expected)
throws Exception {
final TestInputConfiguration testInputConfiguration =
final ModuleInputConfiguration moduleInputConfiguration =
InlineConfigParser.parse(filePath);
final Configuration parsedConfig = testInputConfiguration.createConfiguration();
verifyConfig(aConfig, parsedConfig, testInputConfiguration);
verifyViolations(parsedConfig, filePath, testInputConfiguration);
final Configuration parsedConfig = moduleInputConfiguration.createConfiguration();
verifyConfig(aConfig, parsedConfig, moduleInputConfiguration);
verifyViolations(parsedConfig, filePath, moduleInputConfiguration);
verify(parsedConfig, filePath, expected);
}

Expand Down Expand Up @@ -396,12 +397,12 @@ protected final void verifyWithLimitedResources(Configuration aConfig,
*
* @param testConfig hardcoded test config.
* @param parsedConfig parsed config from input file.
* @param testInputConfiguration TestInputConfiguration object.
* @param moduleInputConfiguration ModuleInputConfiguration object.
* @throws CheckstyleException if property keys not found.
*/
private static void verifyConfig(Configuration testConfig,
Configuration parsedConfig,
TestInputConfiguration testInputConfiguration)
ModuleInputConfiguration moduleInputConfiguration)
throws CheckstyleException {
assertWithMessage("Check name differs from expected.")
.that(testConfig.getName())
Expand All @@ -416,7 +417,7 @@ private static void verifyConfig(Configuration testConfig,
testProperties.removeAll(Arrays.asList(parsedConfig.getPropertyNames()));
for (String property : testProperties) {
assertWithMessage("Property value for key %s differs from expected.", property)
.that(testInputConfiguration.getDefaultPropertyValue(property))
.that(moduleInputConfiguration.getDefaultPropertyValue(property))
.isEqualTo(testConfig.getProperty(property));
}
}
Expand All @@ -426,14 +427,16 @@ private static void verifyConfig(Configuration testConfig,
*
* @param config parsed config.
* @param file file path.
* @param testInputConfiguration TestInputConfiguration object.
* @param moduleInputConfiguration ModuleInputConfiguration object.
* @throws Exception if exception occurs during verification process.
*/
private void verifyViolations(Configuration config,
String file,
TestInputConfiguration testInputConfiguration) throws Exception {
ModuleInputConfiguration moduleInputConfiguration)
throws Exception {
final List<String> actualViolations = getActualViolationsForFile(config, file);
final List<TestInputViolation> testInputViolations = testInputConfiguration.getViolations();
final List<TestInputViolation> testInputViolations =
moduleInputConfiguration.getViolations();
assertWithMessage("Number of actual and expected violations differ.")
.that(actualViolations)
.hasSize(testInputViolations.size());
Expand Down
Expand Up @@ -84,7 +84,7 @@ public final class InlineConfigParser {
private InlineConfigParser() {
}

public static TestInputConfiguration parse(String inputFilePath) throws Exception {
public static ModuleInputConfiguration parse(String inputFilePath) throws Exception {
return parse(inputFilePath, false);
}

Expand All @@ -95,19 +95,19 @@ public static TestInputConfiguration parse(String inputFilePath) throws Exceptio
* @param setFilteredViolations flag to set filtered violations.
* @throws Exception if unable to read file or file not formatted properly.
*/
private static TestInputConfiguration parse(String inputFilePath,
boolean setFilteredViolations) throws Exception {
private static ModuleInputConfiguration parse(String inputFilePath,
boolean setFilteredViolations) throws Exception {
final Path filePath = Paths.get(inputFilePath);
final List<String> lines = readFile(filePath);
final TestInputConfiguration.Builder inputConfigBuilder =
new TestInputConfiguration.Builder();
setCheckName(inputConfigBuilder, inputFilePath, lines);
final ModuleInputConfiguration.Builder inputConfigBuilder =
new ModuleInputConfiguration.Builder();
setModuleName(inputConfigBuilder, inputFilePath, lines);
setProperties(inputConfigBuilder, inputFilePath, lines, 2);
setViolations(inputConfigBuilder, lines, setFilteredViolations);
return inputConfigBuilder.build();
}

public static TestInputConfiguration parseWithFilteredViolations(String inputFilePath)
public static ModuleInputConfiguration parseWithFilteredViolations(String inputFilePath)
throws Exception {
return parse(inputFilePath, true);
}
Expand All @@ -118,12 +118,12 @@ public static TestInputConfiguration parseWithFilteredViolations(String inputFil
* @param inputFilePath the input file path.
* @throws Exception if unable to read file or file not formatted properly.
*/
public static TestInputConfiguration parseFilter(String inputFilePath)
public static ModuleInputConfiguration parseFilter(String inputFilePath)
throws Exception {
final Path filePath = Paths.get(inputFilePath);
final List<String> lines = readFile(filePath);
final TestInputConfiguration.Builder inputConfigBuilder =
new TestInputConfiguration.Builder();
final ModuleInputConfiguration.Builder inputConfigBuilder =
new ModuleInputConfiguration.Builder();
final int lineNo = getFilterConfigLineNo(lines);
setFilterName(inputConfigBuilder, inputFilePath, lines, lineNo);
setProperties(inputConfigBuilder, inputFilePath, lines, lineNo + 1);
Expand Down Expand Up @@ -193,14 +193,14 @@ private static List<String> readFile(Path filePath) throws CheckstyleException {
}
}

private static void setCheckName(TestInputConfiguration.Builder inputConfigBuilder,
String filePath, List<String> lines)
private static void setModuleName(ModuleInputConfiguration.Builder inputConfigBuilder,
String filePath, List<String> lines)
throws CheckstyleException {
if (lines.size() < 2) {
throw new CheckstyleException("Config not specified in " + filePath);
}
final String checkName = lines.get(1);
final String fullyQualifiedClassName = getFullyQualifiedClassName(filePath, checkName);
final String moduleName = lines.get(1);
final String fullyQualifiedClassName = getFullyQualifiedClassName(filePath, moduleName);
inputConfigBuilder.setModuleName(fullyQualifiedClassName);
}

Expand All @@ -212,7 +212,7 @@ private static int getFilterConfigLineNo(List<String> lines) {
return lineNo;
}

private static void setFilterName(TestInputConfiguration.Builder inputConfigBuilder,
private static void setFilterName(ModuleInputConfiguration.Builder inputConfigBuilder,
String filePath, List<String> lines, int lineNo)
throws CheckstyleException {
final String filterName = lines.get(lineNo);
Expand All @@ -223,7 +223,7 @@ private static void setFilterName(TestInputConfiguration.Builder inputConfigBuil
inputConfigBuilder.setModuleName(fullyQualifiedClassName);
}

private static void setProperties(TestInputConfiguration.Builder inputConfigBuilder,
private static void setProperties(ModuleInputConfiguration.Builder inputConfigBuilder,
String inputFilePath,
List<String> lines,
int beginLineNo)
Expand All @@ -242,7 +242,7 @@ private static void setProperties(TestInputConfiguration.Builder inputConfigBuil
final String key = entry.getKey().toString();
final String value = entry.getValue().toString();
if (key.startsWith("message.")) {
inputConfigBuilder.addCheckMessage(key.substring(8), value);
inputConfigBuilder.addModuleMessage(key.substring(8), value);
}
else if (value.startsWith("(file)")) {
final String fileName = value.substring(value.indexOf(')') + 1);
Expand All @@ -269,7 +269,7 @@ else if (value.startsWith("(default)")) {
}
}

private static void setViolations(TestInputConfiguration.Builder inputConfigBuilder,
private static void setViolations(ModuleInputConfiguration.Builder inputConfigBuilder,
List<String> lines, boolean useFilteredViolations) {
for (int lineNo = 0; lineNo < lines.size(); lineNo++) {
final Matcher violationMatcher =
Expand Down Expand Up @@ -321,7 +321,7 @@ else if (useFilteredViolations) {
}
}

private static void setFilteredViolation(TestInputConfiguration.Builder inputConfigBuilder,
private static void setFilteredViolation(ModuleInputConfiguration.Builder inputConfigBuilder,
int lineNo, String line) {
final Matcher violationMatcher =
FILTERED_VIOLATION_PATTERN.matcher(line);
Expand Down
Expand Up @@ -27,37 +27,37 @@

import com.puppycrawl.tools.checkstyle.DefaultConfiguration;

public final class TestInputConfiguration {
public final class ModuleInputConfiguration {

/** The check name. */
private final String checkName;
/** The module name. */
private final String moduleName;

/** Map of default properties. */
private final Map<String, String> defaultProperties;

/** Map of non default properties. */
private final Map<String, String> nonDefaultProperties;

/** Map of check messages. */
private final Map<String, String> checkMessages;
/** Map of module messages. */
private final Map<String, String> moduleMessages;

/** List of parsed violations. */
private final List<TestInputViolation> violations;

private TestInputConfiguration(String checkName,
Map<String, String> defaultProperties,
Map<String, String> nonDefaultProperties,
Map<String, String> checkMessages,
List<TestInputViolation> violations) {
this.checkName = checkName;
private ModuleInputConfiguration(String moduleName,
Map<String, String> defaultProperties,
Map<String, String> nonDefaultProperties,
Map<String, String> moduleMessages,
List<TestInputViolation> violations) {
this.moduleName = moduleName;
this.defaultProperties = defaultProperties;
this.nonDefaultProperties = nonDefaultProperties;
this.checkMessages = checkMessages;
this.moduleMessages = moduleMessages;
this.violations = violations;
}

public String getCheckName() {
return checkName;
public String getModuleName() {
return moduleName;
}

public Map<String, String> getAllProperties() {
Expand All @@ -75,18 +75,18 @@ public Map<String, String> getNonDefaultProperties() {
return Collections.unmodifiableMap(nonDefaultProperties);
}

public Map<String, String> getCheckMessages() {
return Collections.unmodifiableMap(checkMessages);
public Map<String, String> getModuleMessages() {
return Collections.unmodifiableMap(moduleMessages);
}

public List<TestInputViolation> getViolations() {
return Collections.unmodifiableList(violations);
}

public DefaultConfiguration createConfiguration() {
final DefaultConfiguration parsedConfig = new DefaultConfiguration(checkName);
final DefaultConfiguration parsedConfig = new DefaultConfiguration(moduleName);
nonDefaultProperties.forEach(parsedConfig::addProperty);
checkMessages.forEach(parsedConfig::addMessage);
moduleMessages.forEach(parsedConfig::addMessage);
return parsedConfig;
}

Expand All @@ -100,7 +100,7 @@ public static final class Builder {

private final Map<String, String> nonDefaultProperties = new HashMap<>();

private final Map<String, String> checkMessages = new HashMap<>();
private final Map<String, String> moduleMessages = new HashMap<>();

private final List<TestInputViolation> violations = new ArrayList<>();

Expand All @@ -118,20 +118,20 @@ public void addNonDefaultProperty(String propertyName, String nonDefaultProperty
nonDefaultProperties.put(propertyName, nonDefaultPropertyValue);
}

public void addCheckMessage(String messageKey, String messageString) {
checkMessages.put(messageKey, messageString);
public void addModuleMessage(String messageKey, String messageString) {
moduleMessages.put(messageKey, messageString);
}

public void addViolation(int violationLine, String violationMessage) {
violations.add(new TestInputViolation(violationLine, violationMessage));
}

public TestInputConfiguration build() {
return new TestInputConfiguration(
public ModuleInputConfiguration build() {
return new ModuleInputConfiguration(
moduleName,
defaultProperties,
nonDefaultProperties,
checkMessages,
moduleMessages,
violations
);
}
Expand Down

0 comments on commit 67d63d2

Please sign in to comment.