@@ -15,6 +15,8 @@ import net.mamoe.mirai.console.plugin.jvm.KotlinPlugin
15
15
import net.mamoe.mirai.utils.info
16
16
import java.util.*
17
17
import kotlin.test.assertEquals
18
+ import kotlin.test.assertNotNull
19
+ import kotlin.test.assertNull
18
20
19
21
20
22
internal class PS : ServiceTypedef
@@ -32,9 +34,37 @@ internal object PMain : KotlinPlugin(JvmPluginDescription("net.mamoe.console.ite
32
34
services.forEach { service ->
33
35
logger.info { " Service: $service " }
34
36
}
35
- assertEquals(mutableListOf (
36
- " net.mamoe.console.integrationtest.mod.serviceimpl.ServiceImpl" ,
37
- " net.mamoe.console.itest.serviceloader.ndep.PS" ,
38
- ), services)
37
+ assertEquals(
38
+ mutableListOf (
39
+ " net.mamoe.console.integrationtest.mod.serviceimpl.ServiceImpl" ,
40
+ " net.mamoe.console.itest.serviceloader.ndep.PS" ,
41
+ ), services
42
+ )
43
+ assertEquals(
44
+ " from 2nd plugin" ,
45
+ javaClass.getResourceAsStream(" /test-res.txt" )!! .reader().use { it.readText() }.trim(),
46
+ )
47
+ val tstRes = javaClass.classLoader.getResources(" test-res.txt" ).asSequence().onEach {
48
+ println (it)
49
+ }.toMutableList()
50
+ // /service-loader-2dep-plugin-0.0.0.jar!/test-res.txt
51
+ // /service-loader-0.0.0.jar!/test-res.txt
52
+ // /module-service-loader-typedef-0.0.0.jar!/test-res.txt
53
+ // /module-service-loader-impl-0.0.0.jar!/test-res.txt
54
+ assertEquals(4 , tstRes.size)
55
+
56
+ assertNotNull(javaClass.getResource(" /net/mamoe/console/it/psl/PluginSharedLib.class" ).also {
57
+ println (it)
58
+ })
59
+ assertEquals(
60
+ 1 ,
61
+ javaClass.classLoader.getResources(" net/mamoe/console/it/psl/PluginSharedLib.class" )
62
+ .asSequence().toList()
63
+ .also {
64
+ println (it)
65
+ }.size
66
+ )
67
+ assertNull(javaClass.getResource(" /net/mamoe/mirai/console/MiraiConsole.class" ))
68
+ assertNull(javaClass.getResource(" /net/mamoe/mirai/Bot.class" ))
39
69
}
40
70
}
0 commit comments