En esta cuarta sesión junto a @ivanlorenz hacemos una pequeña pausa en la implementación de la 🦄Wonderful FreshAir App para resumir los Arrow Data Types que hemos usado hasta la fecha, creando simples tests unitarios:
- OptionTest para Option
- NonEmptyListTest para NonEmptyList
- EitherTest para Either
Y por falta de tiempo, dejamos Validated para otra ocasión 😢 ... aunque puedes consultar el EitherVsValidatedTest que creamos en la tercera sesión.
¿Te ha quedado claro el funcionamiento del either.eager? ¡A mi sí! 😁
fun `should flat map with eager`() {
val result = either.eager<MyAppError, MyAppValue> {
val result1 = addOneIfLessThanFive(MyAppValue(2)).bind()
val result2 = addOneIfLessThanFive(result1).bind()
addOneIfLessThanFive(result2).bind()
}
assertThat(result).isEqualTo(Right(MyAppValue(5)))
}
Puedes consultar todo el código fuente aquí 👇
AdevintaSpain / wonderful-freshair-app
🦄 Wonderful FreshAir Application - Kotlin & Arrow sample
... y el vídeo de la cuarta sesión aquí 👇
Top comments (0)