1 package net.pterodactylus.rhynodge.mergers
3 import net.pterodactylus.rhynodge.states.ComicState
4 import net.pterodactylus.rhynodge.states.ComicState.Comic
5 import org.hamcrest.MatcherAssert.assertThat
6 import org.hamcrest.Matchers.contains
9 class ComicMergerTest {
11 private val comicMerger = ComicMerger()
14 fun `comic merger does not reorder comics`() {
15 val oldComicState = ComicState(generateListOfComics())
16 val newComicState = ComicState(generateListOfComics().plusElement(Comic("new 1")))
17 val mergedComicState = comicMerger.mergeStates(oldComicState, newComicState) as ComicState
18 assertThat(mergedComicState.comics(), contains(*generateListOfComics().plusElement(Comic("new 1")).toTypedArray()))
23 private fun generateListOfComics(): List<Comic> = (1..40).map { Comic("comic $it") }