I don’t see what’s clumsy about it. Is it that ‘stub’ seems to be part of the non-test API and gets exposed in production?
I’m not sure why this isn’t just called mock-testing.
In Scala using tagless final, I’ve seen an entire database layer get mocked. It seems like you can substitute a layer of an effect system if you go beyond the three-layer cake model. Not sure it’s warranted, never did Haskell in production.
Seems like a clumsy version of dependency injection in Haskell to me.
I don’t see what’s clumsy about it. Is it that ‘stub’ seems to be part of the non-test API and gets exposed in production?
I’m not sure why this isn’t just called mock-testing.
In Scala using tagless final, I’ve seen an entire database layer get mocked. It seems like you can substitute a layer of an effect system if you go beyond the three-layer cake model. Not sure it’s warranted, never did Haskell in production.
Could you propose an alternative approach?