mirror of
https://github.com/mamoe/mirai.git
synced 2025-03-03 15:10:14 +08:00
Add ConsoleDataScopeImpl.set for test onlyˆ
This commit is contained in:
parent
603e29d739
commit
b1d66c0d20
@ -15,6 +15,7 @@ import net.mamoe.mirai.console.data.AutoSavePluginDataHolder
|
||||
import net.mamoe.mirai.console.data.PluginConfig
|
||||
import net.mamoe.mirai.console.data.PluginData
|
||||
import net.mamoe.mirai.console.data.PluginDataStorage
|
||||
import net.mamoe.mirai.utils.TestOnly
|
||||
import net.mamoe.mirai.utils.childScope
|
||||
import net.mamoe.mirai.utils.minutesToMillis
|
||||
import java.util.concurrent.ConcurrentLinkedQueue
|
||||
@ -45,6 +46,15 @@ internal class ConsoleDataScopeImpl(
|
||||
return (data.find { type.isInstance(it) } ?: configs.find { type.isInstance(it) }) as T?
|
||||
}
|
||||
|
||||
/**
|
||||
* Set and override, for tests only.
|
||||
*/
|
||||
@TestOnly
|
||||
inline fun <reified T : PluginData> set(value: T) {
|
||||
data.removeIf { value::class.isInstance(it) }
|
||||
data.add(value)
|
||||
}
|
||||
|
||||
override fun reloadAll() {
|
||||
data.forEach { dt ->
|
||||
dataStorage.load(dataHolder, dt)
|
||||
|
Loading…
Reference in New Issue
Block a user