From 2fd115ada4fb88bce23ac43cbc1ca73c3e761d83 Mon Sep 17 00:00:00 2001 From: William Walker <wnwalker@ucsc.edu> Date: Thu, 20 Mar 2025 09:30:36 -0700 Subject: [PATCH] wip --- ...est.kt => LibraryArchitectureAssertion.kt} | 21 ++++++++++++++++--- .../test/{ => kotest}/DevDeviceApiTests.kt | 2 +- .../test/{ => kotest}/DevGroupApiTests.kt | 2 +- .../test/{ => kotest}/DevUserApiTests.kt | 2 +- .../test/{ => kotest}/DevUtilityTests.kt | 2 +- .../temerity/test/{ => kotest}/ModelTests.kt | 2 +- .../test/{ => kotest}/ProdReportTests.kt | 2 +- .../test/{ => kotest}/ProdUtilityTests.kt | 2 +- .../test/{ => kotest}/TemerityDevTest.kt | 2 +- .../its/temerity/test/{ => kotest}/Util.kt | 2 +- 10 files changed, 27 insertions(+), 12 deletions(-) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/konsist/{TestKonsistTest.kt => LibraryArchitectureAssertion.kt} (65%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/DevDeviceApiTests.kt (96%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/DevGroupApiTests.kt (96%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/DevUserApiTests.kt (99%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/DevUtilityTests.kt (97%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/ModelTests.kt (96%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/ProdReportTests.kt (99%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/ProdUtilityTests.kt (97%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/TemerityDevTest.kt (99%) rename temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/{ => kotest}/Util.kt (99%) diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/konsist/TestKonsistTest.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/konsist/LibraryArchitectureAssertion.kt similarity index 65% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/konsist/TestKonsistTest.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/konsist/LibraryArchitectureAssertion.kt index e988c97..ff2bc02 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/konsist/TestKonsistTest.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/konsist/LibraryArchitectureAssertion.kt @@ -19,19 +19,34 @@ package edu.ucsc.its.temerity.test.konsist import com.lemonappdev.konsist.api.Konsist import com.lemonappdev.konsist.api.container.KoScope +import com.lemonappdev.konsist.api.ext.koscope.declarationsOf +import com.lemonappdev.konsist.api.ext.provider.hasValidKDocParamTags +import com.lemonappdev.konsist.api.provider.KoKDocProvider +import com.lemonappdev.konsist.api.verify.assertTrue import io.kotest.core.spec.style.FunSpec -class TestKonsistTest : FunSpec() { +class LibraryArchitectureAssertion: FunSpec() { private lateinit var konsist: KoScope init { - beforeSpec { konsist = Konsist.scopeFromProject() } - test("TestKonsistTest") { + test("Each api declaration has kdoc") { + Konsist + .scopeFromProject("..api..") + .declarationsOf<KoKDocProvider>() + .assertTrue { it.hasKDoc } + } + + test("Each function with parameters has param tags") { + Konsist.scopeFromPackage("..api..") + .functions() + .assertTrue { it.hasValidKDocParamTags() } } + + } } diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevDeviceApiTests.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevDeviceApiTests.kt similarity index 96% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevDeviceApiTests.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevDeviceApiTests.kt index 4c6b0b8..02d3ad9 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevDeviceApiTests.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevDeviceApiTests.kt @@ -15,7 +15,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import kotlinx.coroutines.runBlocking diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevGroupApiTests.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevGroupApiTests.kt similarity index 96% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevGroupApiTests.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevGroupApiTests.kt index 41be5fe..810a29e 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevGroupApiTests.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevGroupApiTests.kt @@ -15,7 +15,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import kotlinx.coroutines.runBlocking diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevUserApiTests.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevUserApiTests.kt similarity index 99% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevUserApiTests.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevUserApiTests.kt index 07c2e7e..27432a4 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevUserApiTests.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevUserApiTests.kt @@ -15,7 +15,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import co.touchlab.kermit.Logger import com.skydoves.sandwich.StatusCode diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevUtilityTests.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevUtilityTests.kt similarity index 97% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevUtilityTests.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevUtilityTests.kt index 64b5cbc..abf81af 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/DevUtilityTests.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/DevUtilityTests.kt @@ -17,7 +17,7 @@ */ @file:OptIn(KotestInternal::class) -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import io.kotest.common.ExperimentalKotest import io.kotest.common.KotestInternal diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ModelTests.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ModelTests.kt similarity index 96% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ModelTests.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ModelTests.kt index 7ef1162..4346a76 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ModelTests.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ModelTests.kt @@ -15,7 +15,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import edu.ucsc.its.temerity.model.EventType import io.kotest.common.ExperimentalKotest diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ProdReportTests.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ProdReportTests.kt similarity index 99% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ProdReportTests.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ProdReportTests.kt index c62a65f..45a92f5 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ProdReportTests.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ProdReportTests.kt @@ -15,7 +15,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import edu.ucsc.its.temerity.model.AuditLogSortOrder.NEW_FIRST import edu.ucsc.its.temerity.model.DeviceRecordingSession diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ProdUtilityTests.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ProdUtilityTests.kt similarity index 97% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ProdUtilityTests.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ProdUtilityTests.kt index 4dfbc5f..dfe23b9 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/ProdUtilityTests.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/ProdUtilityTests.kt @@ -17,7 +17,7 @@ */ @file:OptIn(KotestInternal::class) -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import io.kotest.common.ExperimentalKotest import io.kotest.common.KotestInternal diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/TemerityDevTest.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/TemerityDevTest.kt similarity index 99% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/TemerityDevTest.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/TemerityDevTest.kt index c3c4f8c..25b9141 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/TemerityDevTest.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/TemerityDevTest.kt @@ -15,7 +15,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import co.touchlab.kermit.Logger import com.skydoves.sandwich.StatusCode diff --git a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/Util.kt b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/Util.kt similarity index 99% rename from temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/Util.kt rename to temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/Util.kt index f2c8893..f4d3e12 100644 --- a/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/Util.kt +++ b/temerity/src/jvmTest/kotlin/edu/ucsc/its/temerity/test/kotest/Util.kt @@ -17,7 +17,7 @@ */ @file:OptIn(KotestInternal::class) -package edu.ucsc.its.temerity.test +package edu.ucsc.its.temerity.test.kotest import edu.ucsc.its.temerity.core.TemClientConfig import edu.ucsc.its.temerity.core.Temerity -- GitLab