public class TestConfigurationBuilder extends Object
new TestConfigurationBuilder()
.addOption("-Awarns")
.addSourceFile("src1.java")
.addDiagnosticFile("src1.out")
TestConfiguration
Modifier and Type | Field and Description |
---|---|
static String |
TESTS_OUTPUTDIR |
Constructor and Description |
---|
TestConfigurationBuilder()
Note: There are static helper methods named buildConfiguration and buildConfigurationBuilder
that can be used to create the most common types of configurations
|
TestConfigurationBuilder(TestConfiguration initialConfig)
Create a builder that has all of the optoins in initialConfig
|
Modifier and Type | Method and Description |
---|---|
TestConfigurationBuilder |
addDiagnosticFile(File diagnostics) |
TestConfigurationBuilder |
addDiagnosticFiles(Iterable<File> diagnostics) |
TestConfigurationBuilder |
adddToPathOption(String key,
String toAppend) |
TestConfigurationBuilder |
addOption(String option) |
TestConfigurationBuilder |
addOption(String option,
String value) |
TestConfigurationBuilder |
addOptionIfValueNonEmpty(String option,
String value) |
TestConfigurationBuilder |
addOptions(Iterable<String> newOptions) |
TestConfigurationBuilder |
addOptions(Map<String,String> options) |
TestConfigurationBuilder |
addProcessor(String processor) |
TestConfigurationBuilder |
addProcessors(Iterable<String> processors) |
TestConfigurationBuilder |
addSourceFile(File sourceFile) |
TestConfigurationBuilder |
addSourceFiles(Iterable<File> sourceFiles) |
TestConfiguration |
build()
Creates a TestConfiguration using the settings in this builder.
|
static TestConfiguration |
buildDefaultConfiguration(String testSourcePath,
File outputClassDirectory,
String classPath,
Iterable<File> testSourceFiles,
Iterable<String> processors,
List<String> options,
boolean shouldEmitDebugInfo)
This is the default configuration used by Checker Framework JUnit tests.
|
static TestConfiguration |
buildDefaultConfiguration(String testSourcePath,
File testFile,
String checkerName,
List<String> options,
boolean shouldEmitDebugInfo)
This is the default configuration used by Checker Framework JUnit tests.
|
TestConfigurationBuilder |
dontEmitDebugInfo() |
TestConfigurationBuilder |
emitDebugInfo() |
List<String> |
flatOptions() |
static String |
getDefaultClassPath() |
static TestConfigurationBuilder |
getDefaultConfigurationBuilder(String testSourcePath,
File outputClassDirectory,
String classPath,
Iterable<File> testSourceFiles,
Iterable<String> processors,
List<String> options,
boolean shouldEmitDebugInfo)
This creates a builder for the default configuration used by Checker Framework JUnit tests.
|
static TestConfigurationBuilder |
getDefaultConfigurationBuilder(String testSourcePath,
File testFile,
String checkerName,
List<String> options,
boolean shouldEmitDebugInfo)
This returns a builder for the default configuration used by Checker Framework JUnit tests.
|
static String |
getJdkJarPathFromProperty()
Uses the system property "JDK_JAR" to find the annotated JDK
|
static File |
getOutputDirFromProperty() |
TestConfigurationBuilder |
setDiagnosticFiles(List<File> diagnosticFiles) |
TestConfigurationBuilder |
setOptions(Map<String,String> options) |
TestConfigurationBuilder |
setProcessors(Iterable<String> processors) |
TestConfigurationBuilder |
setShouldEmitDebugInfo(boolean shouldEmitDebugInfo) |
TestConfigurationBuilder |
setSourceFiles(List<File> sourceFiles) |
String |
toString() |
List<String> |
validate(boolean requireProcessors)
Ensures that the minimum requirements for running a test are met.
|
TestConfiguration |
validateThenBuild(boolean requireProcessors)
Creates a TestConfiguration using the settings in this builder.
|
public static final String TESTS_OUTPUTDIR
public TestConfigurationBuilder()
public TestConfigurationBuilder(TestConfiguration initialConfig)
public static TestConfigurationBuilder getDefaultConfigurationBuilder(String testSourcePath, File outputClassDirectory, String classPath, Iterable<File> testSourceFiles, Iterable<String> processors, List<String> options, boolean shouldEmitDebugInfo)
testSourcePath
- The path to the Checker test file sources, usually this is the directory of Checker's testsoutputClassDirectory
- The directory to place classes compiled for testingclassPath
- The classpath to use for compilationtestSourceFiles
- The Java files that compose the testprocessors
- The checkers or other annotation processors to run over the testSourceFilesoptions
- The options to the compiler/processorsshouldEmitDebugInfo
- Whether or not debug information should be emittedpublic static TestConfigurationBuilder getDefaultConfigurationBuilder(String testSourcePath, File testFile, String checkerName, List<String> options, boolean shouldEmitDebugInfo)
testSourcePath
- The path to the Checker test file sources, usually this is the directory of Checker's teststestFile
- a single test java file to compilecheckerName
- a single Checker to include in the processors fieldoptions
- The options to the compiler/processorsshouldEmitDebugInfo
- Whether or not debug information should be emittedpublic static TestConfiguration buildDefaultConfiguration(String testSourcePath, File outputClassDirectory, String classPath, Iterable<File> testSourceFiles, Iterable<String> processors, List<String> options, boolean shouldEmitDebugInfo)
testSourcePath
- The path to the Checker test file sources, usually this is the directory of Checker's testsoutputClassDirectory
- The directory to place classes compiled for testingclassPath
- The classpath to use for compilationtestSourceFiles
- The Java files that compose the testprocessors
- The checkers or other annotation processors to run over the testSourceFilesoptions
- The options to the compiler/processorsshouldEmitDebugInfo
- Whether or not debug information should be emittedpublic static TestConfiguration buildDefaultConfiguration(String testSourcePath, File testFile, String checkerName, List<String> options, boolean shouldEmitDebugInfo)
testSourcePath
- The path to the Checker test file sources, usually this is the directory of Checker's teststestFile
- a single test java file to compilecheckerName
- a single Checker to include in the processors fieldoptions
- The options to the compiler/processorsshouldEmitDebugInfo
- Whether or not debug information should be emittedpublic List<String> validate(boolean requireProcessors)
requireProcessors
- Whether or not to require that there is at least one processorpublic TestConfigurationBuilder adddToPathOption(String key, String toAppend)
public TestConfigurationBuilder addDiagnosticFile(File diagnostics)
public TestConfigurationBuilder addDiagnosticFiles(Iterable<File> diagnostics)
public TestConfigurationBuilder setDiagnosticFiles(List<File> diagnosticFiles)
public TestConfigurationBuilder addSourceFile(File sourceFile)
public TestConfigurationBuilder addSourceFiles(Iterable<File> sourceFiles)
public TestConfigurationBuilder setSourceFiles(List<File> sourceFiles)
public TestConfigurationBuilder setOptions(Map<String,String> options)
public TestConfigurationBuilder addOption(String option)
public TestConfigurationBuilder addOption(String option, String value)
public TestConfigurationBuilder addOptionIfValueNonEmpty(String option, String value)
public TestConfigurationBuilder addOptions(Map<String,String> options)
public TestConfigurationBuilder addOptions(Iterable<String> newOptions)
public TestConfigurationBuilder setProcessors(Iterable<String> processors)
public TestConfigurationBuilder addProcessor(String processor)
public TestConfigurationBuilder addProcessors(Iterable<String> processors)
public TestConfigurationBuilder emitDebugInfo()
public TestConfigurationBuilder dontEmitDebugInfo()
public TestConfigurationBuilder setShouldEmitDebugInfo(boolean shouldEmitDebugInfo)
public TestConfiguration build()
public TestConfiguration validateThenBuild(boolean requireProcessors)
requireProcessors
- Whether or not there should be at least 1 processor specified, see method validatepublic static File getOutputDirFromProperty()
public static String getDefaultClassPath()
public static String getJdkJarPathFromProperty()