MockStrangerTest.kt 1.4 KB

12345678910111213141516171819202122232425262728293031323334
  1. /*
  2. * Copyright 2019-2022 Mamoe Technologies and contributors.
  3. *
  4. * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证.
  5. * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link.
  6. *
  7. * https://github.com/mamoe/mirai/blob/dev/LICENSE
  8. */
  9. package net.mamoe.mirai.mock.test.mock
  10. import net.mamoe.mirai.event.events.StrangerRelationChangeEvent
  11. import net.mamoe.mirai.mock.test.MockBotTestBase
  12. import net.mamoe.mirai.utils.cast
  13. import org.junit.jupiter.api.Test
  14. import kotlin.test.assertEquals
  15. import kotlin.test.assertNotEquals
  16. internal class MockStrangerTest : MockBotTestBase() {
  17. @Test
  18. internal fun testStrangerRelationChangeEvent() = runTest {
  19. runAndReceiveEventBroadcast {
  20. bot.addStranger(111, "aa").addAsFriend()
  21. bot.addStranger(222, "bb").delete()
  22. }.let { events ->
  23. assertEquals(2, events.size)
  24. assertIsInstance<StrangerRelationChangeEvent.Friended>(events[0])
  25. assertEquals(111, events[0].cast<StrangerRelationChangeEvent.Friended>().friend.id)
  26. assertIsInstance<StrangerRelationChangeEvent.Deleted>(events[1])
  27. assertEquals(222, events[1].cast<StrangerRelationChangeEvent.Deleted>().stranger.id)
  28. assertNotEquals("", bot.getFriend(111)!!.avatarUrl)
  29. }
  30. }
  31. }