|
|
|
@ -11,13 +11,13 @@ import java.time.LocalDateTime
|
|
|
|
|
import java.util.UUID |
|
|
|
|
import kotlin.test.AfterTest |
|
|
|
|
import kotlin.test.BeforeTest |
|
|
|
|
import kotlin.test.Test |
|
|
|
|
import models.Player |
|
|
|
|
import org.junit.jupiter.api.Assertions.assertEquals |
|
|
|
|
import org.junit.jupiter.api.Assertions.assertFalse |
|
|
|
|
import org.junit.jupiter.api.Assertions.assertNotEquals |
|
|
|
|
import org.junit.jupiter.api.Assertions.assertTrue |
|
|
|
|
import org.junit.jupiter.api.Nested |
|
|
|
|
import org.junit.jupiter.api.Test |
|
|
|
|
|
|
|
|
|
class SimplePlayerTimeTest { |
|
|
|
|
|
|
|
|
@ -184,4 +184,42 @@ class SimplePlayerTimeTest {
|
|
|
|
|
println(playTime.toMinutes()) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Nested |
|
|
|
|
inner class TopPlayer { |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
fun `get list with players`() { |
|
|
|
|
val player1 = Player(UUID.randomUUID(), "player1", playTime = Duration.ZERO) |
|
|
|
|
val player2 = Player(UUID.randomUUID(), "player2", playTime = Duration.ofMinutes(10)) |
|
|
|
|
|
|
|
|
|
val mockPlayerTimeDB = mockk<PlayerTimeDB>() |
|
|
|
|
every { mockPlayerTimeDB.findAll() } returns listOf(player1, player2) |
|
|
|
|
|
|
|
|
|
val playerService = SimplePlayerTime(mockPlayerTimeDB) |
|
|
|
|
|
|
|
|
|
val topPlayer = playerService.getTopPlayers() |
|
|
|
|
|
|
|
|
|
assertFalse(topPlayer.isEmpty()) |
|
|
|
|
assertEquals(2, topPlayer.size) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
fun `get list with players sorted by most time`() { |
|
|
|
|
val player1 = Player(UUID.randomUUID(), "player1", playTime = Duration.ZERO) |
|
|
|
|
val player2 = Player(UUID.randomUUID(), "player2", playTime = Duration.ofMinutes(10)) |
|
|
|
|
val player3 = Player(UUID.randomUUID(), "player3", playTime = Duration.ofHours(2)) |
|
|
|
|
|
|
|
|
|
val mockPlayerTimeDB = mockk<PlayerTimeDB>() |
|
|
|
|
every { mockPlayerTimeDB.findAll() } returns listOf(player1, player2, player3) |
|
|
|
|
|
|
|
|
|
val playerService = SimplePlayerTime(mockPlayerTimeDB) |
|
|
|
|
|
|
|
|
|
val topPlayer = playerService.getTopPlayers() |
|
|
|
|
|
|
|
|
|
assertEquals(player3, topPlayer[0]) |
|
|
|
|
assertEquals(player2, topPlayer[1]) |
|
|
|
|
assertEquals(player1, topPlayer[2]) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|