callable expectation
verify toThrow asserts exception type
expectCallable()->toThrow and toNotThrow
refactor ExpectationTest