proto-socket/kotlin/build.gradle.kts
toki 9cc1f1d58f sync: update communicator implementation across all languages
- Align protocol documentation (PROTOCOL.md, README.md, VERSIONING.md)
- Go: add nonce test, update communicator
- Kotlin: update Communicator, TcpClient, TcpServer, add TLS test
- Python: update all modules, add certificate test resources
- TypeScript: update communicator, tcp/ws clients and servers, add tests
- Dart: update communicator, heartbeat mixin, and tests
2026-04-26 05:31:56 +09:00

64 lines
1.5 KiB
Text

plugins {
kotlin("jvm") version "2.0.0"
application
id("com.google.protobuf") version "0.9.4"
}
group = "com.tokilabs"
version = "1.0.5"
kotlin {
jvmToolchain(17)
}
sourceSets {
create("crosstest") {
kotlin.srcDir("crosstest")
compileClasspath += sourceSets["main"].output + configurations["runtimeClasspath"]
runtimeClasspath += output + compileClasspath
}
}
dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1")
implementation("com.google.protobuf:protobuf-kotlin:4.27.0")
implementation("com.squareup.okhttp3:okhttp:4.12.0")
implementation("org.java-websocket:Java-WebSocket:1.5.6")
testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.8.1")
testImplementation(kotlin("test"))
}
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:4.27.0"
}
generateProtoTasks {
all().forEach { task ->
task.builtins {
create("kotlin")
}
}
}
}
application {
mainClass.set(
(findProperty("mainClass") as String?)
?: "com.tokilabs.toki_socket.crosstest.MainKt",
)
}
val crosstestSourceSet = sourceSets["crosstest"]
tasks.named<JavaExec>("run") {
classpath = crosstestSourceSet.runtimeClasspath
mainClass.set(
(findProperty("mainClass") as String?)
?: "com.tokilabs.toki_socket.crosstest.MainKt",
)
}
tasks.test {
useJUnitPlatform()
}