Generic Method Helpers

Per request of Paulo Morgado and others, we are implementing Generic API’s for TypeMock.
TypeMock has supported Generic since .NET 2.0 Beta has been out, but it did not use Generics in the API’s.
This is mainly to allow developers to use the same API’s for all .NET versions and to be able to upgrade their applications .NET version without problems.

We will add a new assembly with the Generic API’s. Here is what we are thinking of implementing:

// Create a Mock Mock m = Mock<TestedClass>.MockNextInstance(); // Mock all instances of a Type Mock m = Mock<TestedClass>.MockAll(); // Create a mocked instance MockObject<TestedClass> m = MockObject<TestedClass>.Create(); TestedClass t = m.Object; // Create a mocked instance for NaturalMocks TestedClass t = MockObject<TestedClass>.CreateObject();

Here are the API’s for generic Methods

// mock with Generic Method Mock m = Mock<GenMethodClass>.MockNextInstance(); m.AlwaysReturn("GenMethod", 11, Generic.Method<int>()); // run it GenMethodClass t = new GenMethodClass(); Assert.AreEqual(11, t.GenMethod<int>(1))

We will also be able to verify parameter types with

mock.ExpectCall("PassObject").Args(Check<IList>);

Any ideas from the community will be appreciated

Add Comment

Required fields are marked *. Your email address will not be published.