Autofac.Extras.Moq
Autofac.Extras.Moq copied to clipboard
Moq auto mocking integration for Autofac IoC
Autofac.Extras.Moq
Moq auto mocking integration for Autofac.
Please file issues and pull requests for this package in this repository rather than in the Autofac core repo.
Quick Start
Given you have a system under test and a dependency:
public class SystemUnderTest
{
public SystemUnderTest(IDependency dependency)
{
}
}
public interface IDependency
{
}
When writing your unit test, use the Autofac.Extras.Moq.AutoMock
class to instantiate the system under test. Doing this will automatically inject a mock dependency into the constructor for you. At the time you create the AutoMock
factory, you can specify default mock behavior:
-
AutoMock.GetLoose()
- creates automatic mocks using loose mocking behavior. -
AutoMock.GetStrict()
- creates automatic mocks using strict mocking behavior. -
AutoMock.GetFromRepository(repo)
- creates mocks based on an existing configured repository.
[Test]
public void Test()
{
using (var mock = AutoMock.GetLoose())
{
// The AutoMock class will inject a mock IDependency
// into the SystemUnderTest constructor
var sut = mock.Create<SystemUnderTest>();
}
}
Get Help
Need help with Autofac? We have a documentation site as well as API documentation. We're ready to answer your questions on Stack Overflow or check out the discussion forum.