VS
Size: a a a
VS
DS
DS
VS
VS
SN
DS
SN
SN
SN
DS
newtype MyTestAppIO a = ReaderT Ctx (... (IO a)) derive (Monad, MonadReader Ctx, ...)Если вещи типа репозиториев протаскиваются как обычные сервисы (или рекорды функций, если речь о хаскеле), то всё один в один как с обычными ОО моками.
instance MyRepository MyTestAppIO where
getUserById id = myMockFunction
DS
SN
newtype MyTestAppIO a = ReaderT Ctx (... (IO a)) derive (Monad, MonadReader Ctx, ...)Если вещи типа репозиториев протаскиваются как обычные сервисы (или рекорды функций, если речь о хаскеле), то всё один в один как с обычными ОО моками.
instance MyRepository MyTestAppIO where
getUserById id = myMockFunction
SN
VS
VS
VS
DS
R
Task AccountService.CreateAccount(string userId, Account account)
. Пушто это блядина совершенно точно кидает исключения (которые как раз приходится читать в недрах имплементации и только там), и еще возможно мутирует Account
, например, проставляя там айдишник, сгенерированный базой.VS
Task AccountService.CreateAccount(string userId, Account account)
. Пушто это блядина совершенно точно кидает исключения (которые как раз приходится читать в недрах имплементации и только там), и еще возможно мутирует Account
, например, проставляя там айдишник, сгенерированный базой.