Improve Micro::Case#call! invalid result error messages
serradura opened this issue · 0 comments
serradura commented
Raise a better error when the Micro::Case#call!
doesn't return a Micro::Case::Result
instance.
Expected exception: Micro::Case::Error::InvalidResult
.
Expected messages:
Invalid success/failure result without a custom type:
The result returned from MyCase#call! must be a Hash.
Example:
Success(result: { key: 'value' })
The result returned from MyCase#call! must be a Hash.
Example:
Failure(result: { key: 'value' })
Invalid success/failure result with a custom type:
The result returned from MyCase#call! must be a Hash.
Example:
Success(:my_success, result: { key: 'value' })
The result returned from MyCase#call! must be a Hash.
Example:
Failure(:my_failure, result: { key: 'value' })
Thanks, @MatheusRich and @mrbongiolo for helping me to elaborate on this idea. 🚀