Skip to content

Commit

Permalink
Fixed BookmarkStateTest, BookmarkViewModelTest, and ShowDeleteBookmar…
Browse files Browse the repository at this point in the history
…ksDialogTest.
  • Loading branch information
MohitMaliDeveloper committed Jun 25, 2024
1 parent 38e4fe4 commit f209aa6
Show file tree
Hide file tree
Showing 4 changed files with 49 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ fun historyState(
)

fun bookmark(
databaseId: Long,
bookmarkTitle: String = "bookmarkTitle",
isSelected: Boolean = false,
id: Long = 2,
Expand All @@ -81,6 +82,7 @@ fun bookmark(
favicon: String = "favicon"
): LibkiwixBookmarkItem {
return LibkiwixBookmarkItem(
databaseId = databaseId,
id = id,
zimId = zimId,
zimName = zimName,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,14 @@ import org.assertj.core.api.Assertions.assertThat
import org.junit.jupiter.api.Test
import org.kiwix.kiwixmobile.core.page.bookmark
import org.kiwix.kiwixmobile.core.page.bookmarkState
import java.util.UUID

internal class BookmarkStateTest {
@Test
internal fun `copyNewItems should set new items to pageItems`() {
assertThat(bookmarkState(emptyList()).copy(listOf(bookmark())).pageItems).isEqualTo(
listOf(bookmark())
val databaseId = UUID.randomUUID().mostSignificantBits and Long.MAX_VALUE
assertThat(bookmarkState(emptyList()).copy(listOf(bookmark(databaseId))).pageItems).isEqualTo(
listOf(bookmark(databaseId))
)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ import org.kiwix.kiwixmobile.core.reader.ZimReaderContainer
import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil
import org.kiwix.sharedFunctions.InstantExecutorExtension
import org.kiwix.sharedFunctions.setScheduler
import java.util.UUID

@ExtendWith(InstantExecutorExtension::class)
internal class BookmarkViewModelTest {
Expand Down Expand Up @@ -89,8 +90,14 @@ internal class BookmarkViewModelTest {

@Test
fun `updatePages return state with bookmark items`() {
assertThat(viewModel.updatePages(bookmarkState(), UpdatePages(listOf(bookmark())))).isEqualTo(
bookmarkState(listOf(bookmark()))
val databaseId = UUID.randomUUID().mostSignificantBits and Long.MAX_VALUE
assertThat(
viewModel.updatePages(
bookmarkState(),
UpdatePages(listOf(bookmark(databaseId)))
)
).isEqualTo(
bookmarkState(listOf(bookmark(databaseId)))
)
}

Expand All @@ -115,19 +122,30 @@ internal class BookmarkViewModelTest {

@Test
internal fun `updatePages returns state with updated items`() {
val databaseId = UUID.randomUUID().mostSignificantBits and Long.MAX_VALUE
assertThat(
viewModel.updatePages(bookmarkState(), UpdatePages(listOf(bookmark())))
viewModel.updatePages(bookmarkState(), UpdatePages(listOf(bookmark(databaseId))))
).isEqualTo(
bookmarkState(listOf(bookmark()))
bookmarkState(listOf(bookmark(databaseId)))
)
}

@Test
internal fun `deselectAllPages deselects bookmarks items`() {
val databaseId = UUID.randomUUID().mostSignificantBits and Long.MAX_VALUE
assertThat(
viewModel.deselectAllPages(bookmarkState(bookmarks = listOf(bookmark(isSelected = true))))
viewModel.deselectAllPages(
bookmarkState(
bookmarks = listOf(
bookmark(
isSelected = true,
databaseId = databaseId
)
)
)
)
).isEqualTo(
bookmarkState(bookmarks = listOf(bookmark(isSelected = false)))
bookmarkState(bookmarks = listOf(bookmark(isSelected = false, databaseId = databaseId)))
)
}

Expand All @@ -147,10 +165,11 @@ internal class BookmarkViewModelTest {

@Test
internal fun `copyWithNewItems returns state with copied items`() {
val databaseId = UUID.randomUUID().mostSignificantBits and Long.MAX_VALUE
assertThat(
viewModel.copyWithNewItems(bookmarkState(), listOf(bookmark()))
viewModel.copyWithNewItems(bookmarkState(), listOf(bookmark(databaseId)))
).isEqualTo(
bookmarkState(listOf(bookmark()))
bookmarkState(listOf(bookmark(databaseId)))
)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ import org.kiwix.kiwixmobile.core.page.viewmodel.effects.DeletePageItems
import org.kiwix.kiwixmobile.core.utils.dialog.DialogShower
import org.kiwix.kiwixmobile.core.utils.dialog.KiwixDialog.DeleteAllBookmarks
import org.kiwix.kiwixmobile.core.utils.dialog.KiwixDialog.DeleteSelectedBookmarks
import java.util.UUID

internal class ShowDeleteBookmarksDialogTest {
val effects = mockk<PublishProcessor<SideEffect<*>>>(relaxed = true)
Expand Down Expand Up @@ -68,7 +69,14 @@ internal class ShowDeleteBookmarksDialogTest {
val showDeleteBookmarksDialog =
ShowDeleteBookmarksDialog(
effects,
bookmarkState(listOf(bookmark(isSelected = true))),
bookmarkState(
listOf(
bookmark(
isSelected = true,
databaseId = UUID.randomUUID().mostSignificantBits and Long.MAX_VALUE
)
)
),
newBookmarksDao,
viewModelScope
)
Expand All @@ -82,7 +90,13 @@ internal class ShowDeleteBookmarksDialogTest {
val showDeleteBookmarksDialog =
ShowDeleteBookmarksDialog(
effects,
bookmarkState(listOf(bookmark())),
bookmarkState(
listOf(
bookmark(
databaseId = UUID.randomUUID().mostSignificantBits and Long.MAX_VALUE
)
)
),
newBookmarksDao,
viewModelScope
)
Expand Down

0 comments on commit f209aa6

Please sign in to comment.