You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ChannelStateTest.kt 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package com.dmdirc.ktirc.model
  2. import com.dmdirc.ktirc.io.CaseMapping
  3. import org.junit.jupiter.api.Assertions.*
  4. import org.junit.jupiter.api.Test
  5. internal class ChannelStateTest {
  6. @Test
  7. fun `ChannelModeType identifies which modes need parameters to set`() {
  8. assertTrue(ChannelModeType.List.needsParameterToSet)
  9. assertTrue(ChannelModeType.SetUnsetParameter.needsParameterToSet)
  10. assertTrue(ChannelModeType.SetParameter.needsParameterToSet)
  11. assertFalse(ChannelModeType.NoParameter.needsParameterToSet)
  12. }
  13. @Test
  14. fun `ChannelModeType identifies which modes need parameters to unset`() {
  15. assertTrue(ChannelModeType.List.needsParameterToUnset)
  16. assertTrue(ChannelModeType.SetUnsetParameter.needsParameterToUnset)
  17. assertFalse(ChannelModeType.SetParameter.needsParameterToUnset)
  18. assertFalse(ChannelModeType.NoParameter.needsParameterToUnset)
  19. }
  20. @Test
  21. fun `reset resets all state`() = with(ChannelState("#thegibson") { CaseMapping.Rfc }) {
  22. receivingUserList = true
  23. modesDiscovered = true
  24. topicDiscovered = true
  25. modes['a'] = "b"
  26. users += ChannelUser("acidBurn")
  27. topic = ChannelTopic("Hack the planet!")
  28. reset()
  29. assertFalse(receivingUserList)
  30. assertFalse(modesDiscovered)
  31. assertFalse(topicDiscovered)
  32. assertTrue(modes.isEmpty())
  33. assertEquals(0, users.count())
  34. assertEquals(ChannelTopic(), topic)
  35. }
  36. }