Package org.sonar.api.batch.fs.internal
Class TestInputFileBuilder
- java.lang.Object
-
- org.sonar.api.batch.fs.internal.TestInputFileBuilder
-
public class TestInputFileBuilder extends java.lang.ObjectIntended to be used in unit tests that need to createInputFiles. An InputFile is unambiguously identified by a module key and a relative path, so these parameters are mandatory.A module base directory is only needed to construct absolute paths.
Examples of usage of the constructors:
InputFile file1 = TestInputFileBuilder.create("module1", "myfile.java").build(); InputFile file2 = TestInputFileBuilder.create("", fs.baseDir(), myfile).build();file1 will have the "module1" as both module key and module base directory. file2 has an empty string as module key, and a relative path which is the path from the filesystem base directory to myfile.
- Since:
- 6.3
-
-
Constructor Summary
Constructors Constructor Description TestInputFileBuilder(java.lang.String projectKey, java.io.File moduleBaseDir, java.io.File filePath)Create a InputFile with a given module key and module base directory.TestInputFileBuilder(java.lang.String projectKey, java.lang.String relativePath)Create a InputFile identified by the given project key and relative path.TestInputFileBuilder(java.lang.String projectKey, java.lang.String relativePath, int id)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DefaultInputFilebuild()static TestInputFileBuildercreate(java.lang.String moduleKey, java.io.File moduleBaseDir, java.io.File filePath)static TestInputFileBuildercreate(java.lang.String moduleKey, java.lang.String relativePath)TestInputFileBuilderinitMetadata(java.lang.String content)static DefaultInputDirnewDefaultInputDir(AbstractProjectOrModule module, java.lang.String relativePath)static DefaultInputFilenewDefaultInputFile(java.nio.file.Path projectBaseDir, AbstractProjectOrModule module, java.lang.String relativePath)static DefaultInputModulenewDefaultInputModule(java.lang.String moduleKey, java.io.File baseDir)static DefaultInputModulenewDefaultInputModule(org.sonar.api.batch.bootstrap.ProjectDefinition projectDefinition)static DefaultInputModulenewDefaultInputModule(AbstractProjectOrModule parent, java.lang.String key)static DefaultInputProjectnewDefaultInputProject(java.lang.String projectKey, java.io.File baseDir)static DefaultInputProjectnewDefaultInputProject(java.lang.String key, java.nio.file.Path baseDir)static DefaultInputProjectnewDefaultInputProject(org.sonar.api.batch.bootstrap.ProjectDefinition projectDefinition)static intnextBatchId()TestInputFileBuildersetCharset(java.nio.charset.Charset charset)TestInputFileBuildersetContents(java.lang.String content)Set contents of the file and calculates metadata from it.TestInputFileBuildersetHash(java.lang.String hash)TestInputFileBuildersetLanguage(java.lang.String language)TestInputFileBuildersetLastValidOffset(int lastValidOffset)TestInputFileBuildersetLines(int lines)TestInputFileBuildersetMetadata(Metadata metadata)TestInputFileBuildersetModuleBaseDir(java.nio.file.Path moduleBaseDir)TestInputFileBuildersetNonBlankLines(int nonBlankLines)TestInputFileBuildersetOriginalLineEndOffsets(int[] originalLineEndOffsets)TestInputFileBuildersetOriginalLineStartOffsets(int[] originalLineStartOffsets)TestInputFileBuildersetProjectBaseDir(java.nio.file.Path projectBaseDir)TestInputFileBuildersetPublish(boolean publish)TestInputFileBuildersetStatus(org.sonar.api.batch.fs.InputFile.Status status)TestInputFileBuildersetType(org.sonar.api.batch.fs.InputFile.Type type)
-
-
-
Constructor Detail
-
TestInputFileBuilder
public TestInputFileBuilder(java.lang.String projectKey, java.lang.String relativePath)Create a InputFile identified by the given project key and relative path.
-
TestInputFileBuilder
public TestInputFileBuilder(java.lang.String projectKey, java.io.File moduleBaseDir, java.io.File filePath)Create a InputFile with a given module key and module base directory. The relative path is generated comparing the file path to the module base directory. filePath must point to a file that is within the module base directory.
-
TestInputFileBuilder
public TestInputFileBuilder(java.lang.String projectKey, java.lang.String relativePath, int id)
-
-
Method Detail
-
create
public static TestInputFileBuilder create(java.lang.String moduleKey, java.io.File moduleBaseDir, java.io.File filePath)
-
create
public static TestInputFileBuilder create(java.lang.String moduleKey, java.lang.String relativePath)
-
nextBatchId
public static int nextBatchId()
-
setProjectBaseDir
public TestInputFileBuilder setProjectBaseDir(java.nio.file.Path projectBaseDir)
-
setModuleBaseDir
public TestInputFileBuilder setModuleBaseDir(java.nio.file.Path moduleBaseDir)
-
setLanguage
public TestInputFileBuilder setLanguage(@Nullable java.lang.String language)
-
setType
public TestInputFileBuilder setType(org.sonar.api.batch.fs.InputFile.Type type)
-
setStatus
public TestInputFileBuilder setStatus(org.sonar.api.batch.fs.InputFile.Status status)
-
setLines
public TestInputFileBuilder setLines(int lines)
-
setCharset
public TestInputFileBuilder setCharset(java.nio.charset.Charset charset)
-
setHash
public TestInputFileBuilder setHash(java.lang.String hash)
-
setContents
public TestInputFileBuilder setContents(java.lang.String content)
Set contents of the file and calculates metadata from it. The contents will be returned byInputFile.contents()andInputFile.inputStream()and can be inconsistent with the actual physical file pointed byInputFile.path(),InputFile.absolutePath(), etc.
-
setNonBlankLines
public TestInputFileBuilder setNonBlankLines(int nonBlankLines)
-
setLastValidOffset
public TestInputFileBuilder setLastValidOffset(int lastValidOffset)
-
setOriginalLineStartOffsets
public TestInputFileBuilder setOriginalLineStartOffsets(int[] originalLineStartOffsets)
-
setOriginalLineEndOffsets
public TestInputFileBuilder setOriginalLineEndOffsets(int[] originalLineEndOffsets)
-
setPublish
public TestInputFileBuilder setPublish(boolean publish)
-
setMetadata
public TestInputFileBuilder setMetadata(Metadata metadata)
-
initMetadata
public TestInputFileBuilder initMetadata(java.lang.String content)
-
build
public DefaultInputFile build()
-
newDefaultInputModule
public static DefaultInputModule newDefaultInputModule(java.lang.String moduleKey, java.io.File baseDir)
-
newDefaultInputModule
public static DefaultInputModule newDefaultInputModule(org.sonar.api.batch.bootstrap.ProjectDefinition projectDefinition)
-
newDefaultInputModule
public static DefaultInputModule newDefaultInputModule(AbstractProjectOrModule parent, java.lang.String key) throws java.io.IOException
- Throws:
java.io.IOException
-
newDefaultInputProject
public static DefaultInputProject newDefaultInputProject(java.lang.String projectKey, java.io.File baseDir)
-
newDefaultInputProject
public static DefaultInputProject newDefaultInputProject(org.sonar.api.batch.bootstrap.ProjectDefinition projectDefinition)
-
newDefaultInputProject
public static DefaultInputProject newDefaultInputProject(java.lang.String key, java.nio.file.Path baseDir) throws java.io.IOException
- Throws:
java.io.IOException
-
newDefaultInputDir
public static DefaultInputDir newDefaultInputDir(AbstractProjectOrModule module, java.lang.String relativePath) throws java.io.IOException
- Throws:
java.io.IOException
-
newDefaultInputFile
public static DefaultInputFile newDefaultInputFile(java.nio.file.Path projectBaseDir, AbstractProjectOrModule module, java.lang.String relativePath)
-
-