implemented 03-gitea-client.md: added Gitea API client for commit statuses, status mapping, and extensive tests
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
package de.hoennig.gittally.gitea
|
||||
|
||||
import de.hoennig.gittally.build.BuildStatus
|
||||
import io.kotest.core.spec.style.FunSpec
|
||||
import io.kotest.matchers.nulls.shouldBeNull
|
||||
import io.kotest.matchers.shouldBe
|
||||
|
||||
class GiteaStateMappingTest :
|
||||
FunSpec({
|
||||
|
||||
test("maps each build status to its Gitea state") {
|
||||
BuildStatus.SUCCESS.toGiteaState() shouldBe "success"
|
||||
BuildStatus.FAILED.toGiteaState() shouldBe "failure"
|
||||
BuildStatus.INTERRUPTED.toGiteaState() shouldBe "failure"
|
||||
BuildStatus.CANCELLED.toGiteaState() shouldBe "failure"
|
||||
BuildStatus.PENDING.toGiteaState() shouldBe "pending"
|
||||
BuildStatus.RUNNING.toGiteaState() shouldBe "pending"
|
||||
}
|
||||
|
||||
test("maps Gitea states back to build statuses") {
|
||||
buildStatusFromGiteaState("success") shouldBe BuildStatus.SUCCESS
|
||||
buildStatusFromGiteaState("failure") shouldBe BuildStatus.FAILED
|
||||
buildStatusFromGiteaState("error") shouldBe BuildStatus.FAILED
|
||||
buildStatusFromGiteaState("warning") shouldBe BuildStatus.FAILED
|
||||
buildStatusFromGiteaState("pending") shouldBe BuildStatus.RUNNING
|
||||
}
|
||||
|
||||
test("maps unknown Gitea states to null") {
|
||||
buildStatusFromGiteaState("").shouldBeNull()
|
||||
buildStatusFromGiteaState("deleted").shouldBeNull()
|
||||
buildStatusFromGiteaState("SUCCESS").shouldBeNull()
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user