Configure testing environment

This commit is contained in:
Him188 2020-10-30 10:44:56 +08:00
parent 03467a6f45
commit ba76939b6f
3 changed files with 35 additions and 1 deletions

View File

@ -0,0 +1 @@
/run

View File

@ -57,7 +57,7 @@ import java.nio.file.Paths
@ConsoleExperimentalApi
class MiraiConsoleImplementationTerminal
@JvmOverloads constructor(
override val rootPath: Path = Paths.get(".").toAbsolutePath(),
override val rootPath: Path = Paths.get(System.getProperty("user.dir", ".")).toAbsolutePath(),
override val builtInPluginLoaders: List<Lazy<PluginLoader<*, *>>> = listOf(lazy { JvmPluginLoader }),
override val frontEndDescription: MiraiConsoleFrontEndDescription = ConsoleFrontEndDescImpl,
override val consoleCommandSender: MiraiConsoleImplementation.ConsoleCommandSenderImpl = ConsoleCommandSenderImplTerminal,

View File

@ -0,0 +1,33 @@
/*
* Copyright 2020 Mamoe Technologies and contributors.
*
* 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证.
* Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link.
*
* https://github.com/mamoe/mirai/blob/master/LICENSE
*/
package net.mamoe.mirai.console.terminal
import kotlinx.coroutines.runBlocking
import net.mamoe.mirai.console.MiraiConsole
import java.io.File
fun main() {
configureUserDir()
MiraiConsoleTerminalLoader.startAsDaemon()
runCatching { runBlocking { MiraiConsole.job.join() } }
}
internal fun configureUserDir() {
val projectDir = runCatching {
File(".").resolve("frontend").resolve("mirai-console-terminal")
}.getOrElse { return }
if (projectDir.isDirectory) {
val run = projectDir.resolve("run")
run.mkdir()
System.setProperty("user.dir", run.absolutePath)
println("[Mirai Console] Set user.dir = ${run.absolutePath}")
}
}