Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

UserTest.kt 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package com.dmdirc.ktirc.model
  2. import org.junit.jupiter.api.Assertions.assertEquals
  3. import org.junit.jupiter.api.Assertions.assertNull
  4. import org.junit.jupiter.api.Test
  5. internal class UserTest {
  6. @Test
  7. fun `ByteArray asUser returns user with just nickname`() {
  8. val user = "acidBurn".toByteArray().asUser()
  9. assertEquals("acidBurn", user.nickname)
  10. assertNull(user.ident)
  11. assertNull(user.hostname)
  12. }
  13. @Test
  14. fun `ByteArray asUser returns user and ident`() {
  15. val user = "acidBurn!libby".toByteArray().asUser()
  16. assertEquals("acidBurn", user.nickname)
  17. assertEquals("libby", user.ident)
  18. assertNull(user.hostname)
  19. }
  20. @Test
  21. fun `ByteArray asUser returns user ident and host`() {
  22. val user = "acidBurn!libby@root.localhost".toByteArray().asUser()
  23. assertEquals("acidBurn", user.nickname)
  24. assertEquals("libby", user.ident)
  25. assertEquals("root.localhost", user.hostname)
  26. }
  27. @Test
  28. fun `User updates non-null fields from other instance`() {
  29. val user1 = User("acidBurn", "libby", awayMessage = "Hacking the planet")
  30. user1.updateFrom(User("acidBurn", null, "root.localhost", "acidBurn", "Libby"))
  31. assertEquals("acidBurn", user1.nickname)
  32. assertEquals("libby", user1.ident)
  33. assertEquals("root.localhost", user1.hostname)
  34. assertEquals("acidBurn", user1.account)
  35. assertEquals("Libby", user1.realName)
  36. assertEquals("Hacking the planet", user1.awayMessage)
  37. val user2 = User("acidBurn", null, "root.localhost", "acidBurn", "Libby")
  38. user2.updateFrom(User("acidBurn", "libby", awayMessage = "Hacking the planet"))
  39. assertEquals("acidBurn", user2.nickname)
  40. assertEquals("libby", user2.ident)
  41. assertEquals("root.localhost", user2.hostname)
  42. assertEquals("acidBurn", user2.account)
  43. assertEquals("Libby", user2.realName)
  44. assertEquals("Hacking the planet", user2.awayMessage)
  45. }
  46. }