Question

We have just recently switched to using .Net4.5 and I am doing some refactoring to take advantage of the new ExportFactories.

My question is how do I mock these for unit testing as I inject them into my constructor, but I'm not 100% sure on the best approach to these from a unit testing standpoint.

Était-ce utile?

La solution

The constructor of ExportFactory takes a function that returns a tuple containing the export and another function that release the export. So you can do something like that:

static Tuple<ISomething, Action> CreateMock()
{        
    return new Tuple<ISomething, Action>(new MockSomething(), 
                                         () => Console.WriteLine("Releasing..."));
}

and inject it to your other class' constructor with something like:

var obj = new OtherClass(new ExportFactory<ISomething>(CreateMock));
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top