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.
⚠️ LOOKING FOR AN OWNER! This package is largely in maintenance mode - if you'd like to help the community out and pull it out of maintenance mode, come drop us a line!
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>();
  }
}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.