This package provides some helpful Gomega matchers that help you write effective assertions against counterfeiter fakes.
Verifies that a function was invoked on a counterfeiter fake.
e.g.:
myFake := new(FakeSomething)
myFake.Something("arg1", 0)
Expect(myFake).To(HaveReceived("Something").With(Equal("arg1")).AndWith(BeEquivalentTo(0)))
This actually works with any object that implements an "invocation recording" interface.
type Recorder interface{
Invocations() map[string][][]interface{}
}
- one not need to specify a gomega matcher to check equality
- e.g.: these are equivalent:
Expect(myFake).To(HaveReceived("Something").With(Equal("arg1"), Equal(0)))
Expect(myFake).To(HaveReceived("Something").With("arg1", 0))
(These would be good for new contributors)
- I should be able to specify multiple arguments at once
- e.g.:
Expect(myFake).To(HaveReceived("Something").With(Equal("my-arg", Equal(0)))
- e.g.:
- I should be able to specify a number of times a function was invoked
- e.g.:
Expect(myFake).To(HaveReceived("Something").Times(1))
- e.g.: