Link index-less report pages from the artifact index (v0.9.8)
Gradle's --profile report is archived but was unreachable: report discovery only looked for index.html, while the profile page carries a timestamped file name. Scan reports/ and its direct sub-directories for HTML pages that no index covers, so a report tree cannot flood the index with inner pages. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
632e4396e4
commit
c1869ea427
@@ -237,6 +237,29 @@ class UiControllerTest : FunSpec() {
|
||||
).andExpect(content().string(not(containsString("reports/tests/test/packages/index.html"))))
|
||||
}
|
||||
|
||||
test("artifact index links report pages of directories without an index, but not their inner pages") {
|
||||
val artifactDir = Files.createDirectories(tempDir.resolve("main-abc123-key"))
|
||||
Files.createDirectories(artifactDir.resolve("reports/profile"))
|
||||
Files.writeString(artifactDir.resolve("reports/profile/profile-2026-08-10-18-36-12.html"), "<html></html>")
|
||||
Files.createDirectories(artifactDir.resolve("reports/tests/test"))
|
||||
Files.writeString(artifactDir.resolve("reports/tests/test/index.html"), "<html></html>")
|
||||
Files.createDirectories(artifactDir.resolve("reports/tests/test/classes"))
|
||||
Files.writeString(artifactDir.resolve("reports/tests/test/classes/SomeTest.html"), "<html></html>")
|
||||
every { repository.history() } returns listOf(successResult)
|
||||
every { artifactStore.artifactDir("main-abc123-key") } returns artifactDir
|
||||
|
||||
val page =
|
||||
mockMvc
|
||||
.perform(get("/builds/main-abc123-key"))
|
||||
.andExpect(status().isOk)
|
||||
.andReturn()
|
||||
.response.contentAsString
|
||||
|
||||
page shouldContain "reports/profile/profile-2026-08-10-18-36-12.html"
|
||||
page shouldContain "reports/tests/test/index.html"
|
||||
page shouldNotContain "SomeTest.html"
|
||||
}
|
||||
|
||||
test("report links carry a failed-badge from the report's failures counter") {
|
||||
val artifactDir = Files.createDirectories(tempDir.resolve("main-abc123-key"))
|
||||
Files.createDirectories(artifactDir.resolve("reports/tests/test"))
|
||||
|
||||
Reference in New Issue
Block a user