Mock autofac.icomponentContext с модульными тестами c#C#

Место общения программистов C#
Ответить
Anonymous
 Mock autofac.icomponentContext с модульными тестами c#

Сообщение Anonymous »

Я пытаюсь издеваться над IcomponentContext < /code> с nsubstitute, как ниже: < /p>

[TestClass()]
public class SyncRepositoryFactoryTests
{
private IComponentContext _container;
private SyncRepositoryFactory _factory;

[TestInitialize]
public void Initialize()
{
_container = Substitute.For();
_factory = new SyncRepositoryFactory(_container);
}

[TestMethod]
public void Get_SyncRepositoryOfITestEntity_Success()
{
var repository = Substitute.For();
_container.Resolve().Returns(repository);

var result = _factory.Get();

Assert.IsNotNull(result);
Assert.IsTrue(result is ISyncRepository);
}

public interface ITestEntity
{
}

public class TestEntity : ITestEntity
{
}
}
< /code>

Но я получаю исключение: < /p>

componentnotregisteredException: запрошенная служба
hvb.emarketadvisor. Repository.sharepoint.irepository`1 [[hvb.emarketadvisor.
repository.sharepoint.tests.units.syncrepositoryfactorytests+testentity,
hvb.emarketadvisor.Repository.sharepoint.tests.Units,
verservisor.Repository.sharepoint.Units,
verservisor. = 1,0.0.0, культура = нейтральная, publickeyToken = null]] 'не был зарегистрирован.

Чтобы избежать этого исключения, зарегистрируйте компонент для предоставления услуги,
проверьте регистрацию службы с использованием isRegistered (), либо используйте метод разрешения ()

, когда я пытаюсь создать макет, почему iComponentContext < /code> пытается разрешить зависимость? < /p>

Подробнее здесь: https://stackoverflow.com/questions/298 ... ts-c-sharp
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»