У меня есть следующий модульный тест в моем приложении:
[TestMethod]
public void Windsor_Can_Resolve_HomeController_Dependencies()
{
// Setup
WindsorContainer container = new WindsorContainer();
container.Install(FromAssembly.Containing<HomeController>());
// Act
container.Kernel.Resolve(typeof(HomeController));
}
Суть в том, чтобы убедиться, что у меня нет проблем с настройкой виндзора, которые я не осознаю, пока не получу доступ к действиюна этом контроллере.Проблема заключается в том, что все мои регистрации объектов зарегистрированы как PerWebRequestLifestyle
, поэтому у меня не возникает проблем с общим контекстом данных Entity Framwork между веб-запросами (что приводит к ошибкам при выполнении нескольких действий).
Однаковсякий раз, когда я запускаю этот модульный тест, я получаю следующее исключение:
System.InvalidOperationException: HttpContext.Current имеет значение null.PerWebRequestLifestyle можно использовать только в ASP.Net
Как я могу протестировать этот сценарий, не меняя стиль жизни моих команд регистрации объектов?