Add stub when using expect().to receive()

This appears to match RSpec's behavior.
This commit is contained in:
Michael Miller 2021-07-10 20:28:51 -06:00
parent 384fb3093f
commit 23fd075d51
No known key found for this signature in database
GPG key ID: FB9F12F7C646A4AD

View file

@ -79,11 +79,15 @@ module Spectator::Mocks
end end
def expect(object, stub : MethodStub) : Nil def expect(object, stub : MethodStub) : Nil
fetch_instance(object).expected.add(stub) entry = fetch_instance(object)
entry.expected.add(stub)
entry.stubs.unshift(stub)
end end
def expect(type : T.class, stub : MethodStub) : Nil forall T def expect(type : T.class, stub : MethodStub) : Nil forall T
fetch_type(type).expected.add(stub) entry = fetch_type(type)
entry.expected.add(stub)
entry.stubs.unshift(stub)
end end
private def fetch_instance(object) private def fetch_instance(object)