DummyTracker.kt 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. package eu.kanade.test
  2. import android.graphics.Color
  3. import eu.kanade.tachiyomi.R
  4. import eu.kanade.tachiyomi.data.track.Tracker
  5. import eu.kanade.tachiyomi.data.track.model.TrackSearch
  6. import okhttp3.OkHttpClient
  7. import tachiyomi.domain.track.model.Track
  8. data class DummyTracker(
  9. override val id: Long,
  10. override val name: String,
  11. override val supportsReadingDates: Boolean = false,
  12. override val isLoggedIn: Boolean = false,
  13. val valLogoColor: Int = Color.rgb(18, 25, 35),
  14. val valLogo: Int = R.drawable.ic_tracker_anilist,
  15. val valStatuses: List<Int> = (1..6).toList(),
  16. val valReadingStatus: Int = 1,
  17. val valRereadingStatus: Int = 1,
  18. val valCompletionStatus: Int = 2,
  19. val valScoreList: List<String> = (0..10).map(Int::toString),
  20. val val10PointScore: Double = 5.4,
  21. val valSearchResults: List<TrackSearch> = listOf(),
  22. ) : Tracker {
  23. override val client: OkHttpClient
  24. get() = TODO("Not yet implemented")
  25. override fun getLogoColor(): Int = valLogoColor
  26. override fun getLogo(): Int = valLogo
  27. override fun getStatusList(): List<Int> = valStatuses
  28. override fun getStatus(status: Int): Int? = when (status) {
  29. 1 -> R.string.reading
  30. 2 -> R.string.plan_to_read
  31. 3 -> R.string.completed
  32. 4 -> R.string.on_hold
  33. 5 -> R.string.dropped
  34. 6 -> R.string.repeating
  35. else -> null
  36. }
  37. override fun getReadingStatus(): Int = valReadingStatus
  38. override fun getRereadingStatus(): Int = valRereadingStatus
  39. override fun getCompletionStatus(): Int = valCompletionStatus
  40. override fun getScoreList(): List<String> = valScoreList
  41. override fun get10PointScore(track: Track): Double = val10PointScore
  42. override fun indexToScore(index: Int): Float = getScoreList()[index].toFloat()
  43. override fun displayScore(track: eu.kanade.tachiyomi.data.database.models.Track): String =
  44. track.score.toString()
  45. override suspend fun update(
  46. track: eu.kanade.tachiyomi.data.database.models.Track,
  47. didReadChapter: Boolean,
  48. ): eu.kanade.tachiyomi.data.database.models.Track = track
  49. override suspend fun bind(
  50. track: eu.kanade.tachiyomi.data.database.models.Track,
  51. hasReadChapters: Boolean,
  52. ): eu.kanade.tachiyomi.data.database.models.Track = track
  53. override suspend fun search(query: String): List<TrackSearch> = valSearchResults
  54. override suspend fun refresh(
  55. track: eu.kanade.tachiyomi.data.database.models.Track,
  56. ): eu.kanade.tachiyomi.data.database.models.Track = track
  57. override suspend fun login(username: String, password: String) = Unit
  58. override fun logout() = Unit
  59. override fun getUsername(): String = "username"
  60. override fun getPassword(): String = "passw0rd"
  61. override fun saveCredentials(username: String, password: String) = Unit
  62. override suspend fun register(
  63. item: eu.kanade.tachiyomi.data.database.models.Track,
  64. mangaId: Long,
  65. ) = Unit
  66. override suspend fun setRemoteStatus(
  67. track: eu.kanade.tachiyomi.data.database.models.Track,
  68. status: Int,
  69. ) = Unit
  70. override suspend fun setRemoteLastChapterRead(
  71. track: eu.kanade.tachiyomi.data.database.models.Track,
  72. chapterNumber: Int,
  73. ) = Unit
  74. override suspend fun setRemoteScore(
  75. track: eu.kanade.tachiyomi.data.database.models.Track,
  76. scoreString: String,
  77. ) = Unit
  78. override suspend fun setRemoteStartDate(
  79. track: eu.kanade.tachiyomi.data.database.models.Track,
  80. epochMillis: Long,
  81. ) = Unit
  82. override suspend fun setRemoteFinishDate(
  83. track: eu.kanade.tachiyomi.data.database.models.Track,
  84. epochMillis: Long,
  85. ) = Unit
  86. }