Behavior of the Mocking API Methods

The following methods throw a DesignModeException when you call them with the Design property set to InterfaceOnly:

Isolate.Fake.StaticMethods()

Isolate.Fake.StaticConstructor()

All Isolate.NonPublic methods

All Isolate.Swap methods

In addition, the following methods throw a DesignModeException within conditions:

Methods

Condition

Behavior

Throws Exception When...

Isolate.Fake.Instance<T>

T has some or all virtual methods

Only virtual methods can be faked and verified.


The default recursive fake behavior is applied if the returned object can also be faked.

T is a sealed object

All methods are non-virtual.

Isolate.Fake.Dependencies<T>

All argument types of T’s constructors have some virtual methods

Arguments are faked as with Fake.Instance<>. Object is created and returned.

All dependencies are sealed or have only non-virtual methods.

Isolate.WhenCalled…

Virtual methods

Can set any behavior

Called on non-virtual methods

Isolate.Verify…

Virtual methods

Can verify the behavior

Called on non-virtual methods