Skip to content
This repository was archived by the owner on Jul 29, 2026. It is now read-only.

Commit 893d0b4

Browse files
committed
Handle CRLF settings files in add-module integration tests
1 parent e23d955 commit 893d0b4

1 file changed

Lines changed: 23 additions & 2 deletions

File tree

cli/src/integrationTest/kotlin/com/composables/cli/CliIntegrationTest.kt

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -396,6 +396,24 @@ class CliIntegrationTest {
396396
}
397397
}
398398

399+
@Test
400+
fun `rewriteProjectToUiStyleConventions removes type safe project accessors on CRLF settings files`() {
401+
val rootDir = Files.createTempDirectory("composables-cli-ui-style-crlf").toFile()
402+
try {
403+
val projectDir = File(rootDir, "sample-app").apply { mkdirs() }
404+
File(projectDir, "settings.gradle.kts").writeText(
405+
"rootProject.name = \"sample-app\"\r\n\r\nenableFeaturePreview(\"TYPESAFE_PROJECT_ACCESSORS\")\r\n\r\ninclude(\":shared\")\r\n",
406+
)
407+
408+
rewriteProjectToUiStyleConventions(projectDir)
409+
410+
val rewritten = File(projectDir, "settings.gradle.kts").readText()
411+
assertThat(rewritten).doesNotContain("enableFeaturePreview(\"TYPESAFE_PROJECT_ACCESSORS\")")
412+
} finally {
413+
rootDir.deleteRecursively()
414+
}
415+
}
416+
399417
private fun rewriteProjectToUiStyleConventions(projectDir: File) {
400418
val replacements = listOf(
401419
"libs.plugins.jetbrains.kotlin.multiplatform" to "libs.plugins.kotlin.multiplatform",
@@ -411,7 +429,6 @@ class CliIntegrationTest {
411429
"android-compileSdk" to "android-compile-sdk",
412430
"android-minSdk" to "android-min-sdk",
413431
"android-targetSdk" to "android-target-sdk",
414-
"enableFeaturePreview(\"TYPESAFE_PROJECT_ACCESSORS\")\n\n" to "",
415432
)
416433

417434
projectDir.walkTopDown()
@@ -420,7 +437,11 @@ class CliIntegrationTest {
420437
val updated = replacements.fold(file.readText()) { content, (from, to) ->
421438
content.replace(from, to)
422439
}
423-
file.writeText(updated)
440+
val normalized = updated.replace(
441+
Regex("""enableFeaturePreview\("TYPESAFE_PROJECT_ACCESSORS"\)\r?\n(?:\r?\n)?"""),
442+
"",
443+
)
444+
file.writeText(normalized)
424445
}
425446
}
426447

0 commit comments

Comments
 (0)