mirror of
https://github.com/mamoe/mirai.git
synced 2025-01-11 02:50:15 +08:00
Terminal: make MiraiConsoleImplementationTerminal open and enable all logs for tests
This commit is contained in:
parent
824a72b2e7
commit
85322b3321
@ -1,8 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2019-2020 Mamoe Technologies and contributors.
|
* Copyright 2019-2021 Mamoe Technologies and contributors.
|
||||||
*
|
*
|
||||||
* 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证.
|
* 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证.
|
||||||
* Use of this source code is governed by the GNU AFFERO GENERAL PUBLIC LICENSE version 3 license that can be found through the following link.
|
* 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
|
* https://github.com/mamoe/mirai/blob/master/LICENSE
|
||||||
*/
|
*/
|
||||||
@ -55,9 +55,9 @@ import java.nio.file.Paths
|
|||||||
* @see MiraiConsoleTerminalLoader CLI 入口点
|
* @see MiraiConsoleTerminalLoader CLI 入口点
|
||||||
*/
|
*/
|
||||||
@ConsoleExperimentalApi
|
@ConsoleExperimentalApi
|
||||||
class MiraiConsoleImplementationTerminal
|
open class MiraiConsoleImplementationTerminal
|
||||||
@JvmOverloads constructor(
|
@JvmOverloads constructor(
|
||||||
override val rootPath: Path = Paths.get(System.getProperty("user.dir", ".")).toAbsolutePath(),
|
final override val rootPath: Path = Paths.get(System.getProperty("user.dir", ".")).toAbsolutePath(),
|
||||||
override val builtInPluginLoaders: List<Lazy<PluginLoader<*, *>>> = listOf(lazy { JvmPluginLoader }),
|
override val builtInPluginLoaders: List<Lazy<PluginLoader<*, *>>> = listOf(lazy { JvmPluginLoader }),
|
||||||
override val frontEndDescription: MiraiConsoleFrontEndDescription = ConsoleFrontEndDescImpl,
|
override val frontEndDescription: MiraiConsoleFrontEndDescription = ConsoleFrontEndDescImpl,
|
||||||
override val consoleCommandSender: MiraiConsoleImplementation.ConsoleCommandSenderImpl = ConsoleCommandSenderImplTerminal,
|
override val consoleCommandSender: MiraiConsoleImplementation.ConsoleCommandSenderImpl = ConsoleCommandSenderImplTerminal,
|
||||||
|
@ -11,12 +11,37 @@ package net.mamoe.mirai.console.terminal
|
|||||||
|
|
||||||
import kotlinx.coroutines.runBlocking
|
import kotlinx.coroutines.runBlocking
|
||||||
import net.mamoe.mirai.console.MiraiConsole
|
import net.mamoe.mirai.console.MiraiConsole
|
||||||
|
import net.mamoe.mirai.console.extensions.BotConfigurationAlterer
|
||||||
|
import net.mamoe.mirai.console.logging.LoggerController
|
||||||
|
import net.mamoe.mirai.console.plugin.jvm.JvmPluginDescription
|
||||||
|
import net.mamoe.mirai.console.plugin.jvm.KotlinPlugin
|
||||||
|
import net.mamoe.mirai.utils.MiraiLogger
|
||||||
|
import net.mamoe.mirai.utils.SimpleLogger
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
fun main() {
|
fun main() {
|
||||||
configureUserDir()
|
configureUserDir()
|
||||||
|
|
||||||
MiraiConsoleTerminalLoader.startAsDaemon()
|
val terminal = object : MiraiConsoleImplementationTerminal() {
|
||||||
|
override val loggerController: LoggerController = object : LoggerController {
|
||||||
|
override fun shouldLog(identity: String?, priority: SimpleLogger.LogPriority): Boolean = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
val mockPlugin = object : KotlinPlugin(JvmPluginDescription("org.test.test", "1.0.0")) {}
|
||||||
|
|
||||||
|
terminal.backendAccess.globalComponentStorage.contribute(
|
||||||
|
BotConfigurationAlterer,
|
||||||
|
mockPlugin,
|
||||||
|
BotConfigurationAlterer { _, configuration ->
|
||||||
|
configuration.networkLoggerSupplier = { MiraiLogger.create("Net.${it.id}") } // deploy
|
||||||
|
configuration
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
MiraiConsoleTerminalLoader.startAsDaemon(terminal)
|
||||||
|
|
||||||
|
|
||||||
runCatching { runBlocking { MiraiConsole.job.join() } }
|
runCatching { runBlocking { MiraiConsole.job.join() } }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user