Groovy Documentation

Package groovy.mock.interceptor

The groovy.mock.interceptor is an all-groovy mock testing library.

Terms:

Collaborator
An ordinary Groovy or Java class that's instance or class methods are to be called. Calling them can be time consuming or produce side effects that are unwanted when testing (e.g. database operations).
Caller
A Groovy Object that calls methods on the Collaborator, i.e. collaborates with it.
Mock
An object that can be used to augment the Collaborator. Method calls to the Collaborator will be handled by the Mock, showing a demanded behavior. Method calls are expected to occur strictly in the demanded sequence with a given range of cardinality. The use of a Mock implicitly ends with verifying the expectations.
Stub
Much like a Mock but the expectation about sequences of method calls on the Collaborator is loose, i.e. calls may occur out of the demanded order as long as the ranges of cardinality are met. The use of a Stub does not end with an implicit verification since the stubbing effect is typically asserted on the Caller. An explicit call to verify can be issued to assert all demanded method call have been effected with the specified cardinality.

Features:

For an extensive list of usages see the unit tests in this package.

 

Class Summary
CallSpec
Demand The object that registers method calls on it for the use with Mocks and Stubs.
Ignore Helper object to support convenience "ignore.methodName" notation similar to demand notation.
LooseExpectation Expects demanded call cardinalities to match demanded ranges.
MockFor MockFor supports (typically unit) testing of classes in isolation by allowing a strictly ordered expectation of the behavior of collaborators to be defined.
MockInterceptor Intercepting calls to the collaborating object and notify the expectation object.
MockProxyMetaClass The ProxyMetaClass for the MockInterceptor.
StrictExpectation Expects demanded call cardinalities to match demanded ranges in the sequence of recording.
StubFor StubFor supports (typically unit) testing of classes in isolation by allowing a loosely-ordered expectation of the behavior of collaborators to be defined.
 


Groovy Documentation