Skip to content

Commit

Permalink
Add circular dependency to ProjectParserRootModulesTest for testing
Browse files Browse the repository at this point in the history
  • Loading branch information
LukeNeedham committed May 4, 2024
1 parent 176b179 commit b83690e
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -431,6 +431,7 @@ class ModuleGraphPluginFunctionalTest {
java
}
dependencies {
// Cheeky circular dependency
implementation(project(":example"))
}
""".trimIndent(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ internal class ProjectParserRootModulesTest {
ModuleToDeps.featAData,
ModuleToDeps.commonData,
ModuleToDeps.coreNetworking,
ModuleToDeps.coreUtil,
)

private val projectQuerier = object : ProjectQuerier {
Expand Down Expand Up @@ -64,6 +65,7 @@ internal class ProjectParserRootModulesTest {
ModuleToDeps.featAData,
ModuleToDeps.commonData,
ModuleToDeps.coreNetworking,
ModuleToDeps.coreUtil,
)
val actualGraph = ProjectParser.parseProjectGraph(
allProjectPaths = Project.allPaths,
Expand All @@ -83,6 +85,8 @@ internal class ProjectParserRootModulesTest {
ModuleToDeps.featAUi,
ModuleToDeps.commonComponent,
ModuleToDeps.coreUi,
ModuleToDeps.coreUtil,
ModuleToDeps.coreNetworking,
)
val actualGraph = ProjectParser.parseProjectGraph(
allProjectPaths = Project.allPaths,
Expand All @@ -102,6 +106,7 @@ internal class ProjectParserRootModulesTest {
ModuleToDeps.featAData,
ModuleToDeps.commonData,
ModuleToDeps.coreNetworking,
ModuleToDeps.coreUtil,
)
val actualGraph = ProjectParser.parseProjectGraph(
allProjectPaths = Project.allPaths,
Expand Down Expand Up @@ -152,7 +157,9 @@ private data class ProjectAndDeps(val path: ProjectPath, val deps: List<ProjectP
private object Project {
val coreUtil = ProjectAndDeps(
MockProjectPath.coreUtil,
emptyList(),
// We create a circular dependency between util and networking
// In a real Gradle project this is illegal, but we should still be able to render it.
listOf(MockProjectPath.coreNetworking),
)
val coreNetworking = ProjectAndDeps(
MockProjectPath.coreNetworking,
Expand Down Expand Up @@ -224,6 +231,9 @@ private object ModuleToDeps {
val coreNetworking = createDefaultModuleSource(MockProjectPath.coreNetworking) to listOf(
createDefaultModuleTarget(MockProjectPath.coreUtil),
)
val coreUtil = createDefaultModuleSource(MockProjectPath.coreUtil) to listOf(
createDefaultModuleTarget(MockProjectPath.coreNetworking),
)

private fun createDefaultModuleSource(path: String) = Module(
path = path,
Expand Down

0 comments on commit b83690e

Please sign in to comment.