[Testing] Support test roots in dependencies.txt

This commit is contained in:
Dmitry Savvinov
2019-05-22 11:07:43 +03:00
parent f011c21c94
commit 8e579855f2
3 changed files with 19 additions and 2 deletions
@@ -53,12 +53,23 @@ fun AbstractMultiModuleTest.setupMppProjectFromTextFile(testRoot: File) {
fun AbstractMultiModuleTest.doSetup(projectModel: ProjectResolveModel) {
val resolveModulesToIdeaModules = projectModel.modules.map { resolveModule ->
val ideaModule = createModule(resolveModule.name)
addRoot(
ideaModule,
resolveModule.root,
isTestRoot = false,
transformContainedFiles = { if (it.extension == "kt") clearFileFromDiagnosticMarkup(it) }
)
if (resolveModule.testRoot != null) {
addRoot(
ideaModule,
resolveModule.testRoot,
isTestRoot = true,
transformContainedFiles = { if (it.extension == "kt") clearFileFromDiagnosticMarkup(it) }
)
}
resolveModule to ideaModule
}.toMap()
@@ -29,7 +29,8 @@ open class ResolveModule(
val name: String,
val root: File,
val platform: TargetPlatform,
val dependencies: List<ResolveDependency>
val dependencies: List<ResolveDependency>,
val testRoot: File? = null
) {
final override fun toString(): String {
return buildString { renderDescription(Printer(this)) }
@@ -40,6 +41,7 @@ open class ResolveModule(
printer.pushIndent()
printer.println("platform=$platform")
printer.println("root=${root.absolutePath}")
if (testRoot != null) printer.println("testRoot=${testRoot.absolutePath}")
printer.println("dependencies=${dependencies.joinToString { it.to.name }}")
}
@@ -66,6 +68,7 @@ open class ResolveModule(
var root: File? = null
var platform: TargetPlatform? = null
val dependencies: MutableList<ResolveDependency.Builder> = mutableListOf()
var testRoot: File? = null
open fun build(): ResolveModule {
if (state == State.BUILT) return cachedResult!!
@@ -74,7 +77,7 @@ open class ResolveModule(
state = State.BUILDING
val builtDependencies = dependencies.map { it.build() }
cachedResult = ResolveModule(name!!, root!!, platform!!, builtDependencies)
cachedResult = ResolveModule(name!!, root!!, platform!!, builtDependencies, testRoot)
state = State.BUILT
return cachedResult!!
@@ -68,6 +68,9 @@ open class ProjectStructureParser(private val projectRoot: File) {
val root = attributes["root"] ?: builder.name!!
builder.root = File(projectRoot, root)
val testRoot = attributes["testRoot"]
if (testRoot != null) builder.testRoot = File(projectRoot, testRoot)
}
private fun Reader.parseDependenciesDefinition(fromName: String) {