Mixin template to enable mocking.
Many methods implement compile-time parameters (file, line) that are set at the call site. It is preferred that these parameters are ignored when using these methods.
MIT. See LICENSE for full details.
A template mixin used to inject code into a class to provide mockable behaviour. Code is nested within the host class to provide access to all host types. Only injects code when using the -unittest compiler switch.
import dunit.mockable; class T { mixin Mockable!(T); }
Injected by the Mockable mixin template this method allows creation of mock object instances of the mockable class.
A args | The constructor arguments of the host class. |
import dunit.mockable; class T { mixin Mockable!(T); } unittest { import dunit.toolkit; auto mock = T.getMock(); assertTrue(cast(T)mock); // Mock extends T. }
auto mock = T!(int).getMock(); // Get a mock of T!(int).