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
-
-
-
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(InputFile.Type type)
-
setStatus
public TestInputFileBuilder setStatus(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(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(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)
-
-