You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
816 B

package allin.data.mock
import allin.data.BetDataSource
import allin.model.Bet
import allin.model.UpdatedBetData
import java.time.ZonedDateTime
class MockBetDataSource : BetDataSource {
override fun getAllBets(): List<Bet> = bets
override fun getBetById(id: String): Bet? =
bets.find { it.id == id }
override fun removeBet(id: String): Boolean =
bets.removeIf { it.id == id }
override fun updateBet(data: UpdatedBetData): Boolean {
return bets.find { it.id == data.id }?.let {
it.isPrivate = data.isPrivate
} != null
}
override fun getBetsNotFinished(): List<Bet> =
bets.filter { it.endBet >= ZonedDateTime.now() }
override fun addBet(bet: Bet) {
bets += bet
}
private val bets by lazy { mutableListOf<Bet>() }
}