bsp-testkit2/bsp-testkit/client/MockClient.kt (37 lines of code) (raw):
package org.jetbrains.bsp.testkit.client
import org.jetbrains.bsp.protocol.CoverageReport
import org.jetbrains.bsp.protocol.JoinedBuildClient
import org.jetbrains.bsp.protocol.LogMessageParams
import org.jetbrains.bsp.protocol.PublishDiagnosticsParams
import org.jetbrains.bsp.protocol.TaskFinishParams
import org.jetbrains.bsp.protocol.TaskStartParams
open class MockClient : JoinedBuildClient {
private val logMessage = ArrayList<LogMessageParams>()
private val taskStart = ArrayList<TaskStartParams>()
private val taskFinish = ArrayList<TaskFinishParams>()
private val publishDiagnostics = ArrayList<PublishDiagnosticsParams>()
val logMessageNotifications: List<LogMessageParams>
get() = logMessage
val taskStartNotifications: List<TaskStartParams>
get() = taskStart
val taskFinishNotifications: List<TaskFinishParams>
get() = taskFinish
val publishDiagnosticsNotifications: List<PublishDiagnosticsParams>
get() = publishDiagnostics
fun clearDiagnostics() {
publishDiagnostics.clear()
}
override fun onBuildLogMessage(params: LogMessageParams) {
logMessage.add(params)
}
override fun onBuildTaskStart(params: TaskStartParams) {
taskStart.add(params)
}
override fun onBuildTaskFinish(params: TaskFinishParams) {
taskFinish.add(params)
}
override fun onBuildPublishDiagnostics(params: PublishDiagnosticsParams) {
publishDiagnostics.add(params)
}
override fun onPublishCoverageReport(report: CoverageReport) {}
}