В настоящее время я пишу модульные тесты для приложения ASP Net MVC, и одна из вещей, которые мне нужно смоделировать, - это HTTP-запрос.Для этого я использую библиотеку HttpSimulator (Subtext.TestLibrary).
Я вызываю метод SimulateRequest (), и одна из его функций - создание объекта HostingEnvironment.
_httpSimulator = new HttpSimulator().SimulateRequest(new Uri());
Перед имитацией HTTPзапрос, я должен использовать значение свойства HostingEnvironment.IsHosted в моем коде (в условии условия).
Все отлично работает для первого теста, потому что я получаю правильное значение для HostingEnvironment.IsHosted (который FALSE).
Однако, когда SimulateRequest () создает объект HostingEnvironment, HostingEnvironment.IsHosted становится ИСТИНОЙ, поэтому при выполнении второго теста я получаю значение ИСТИНА, что приводит к неверным результатам (или исключению).
HostingEnvironment environment = new HostingEnvironment();
Поэтому я пытаюсь найти способ сбросить HostingEnvironment.IsHosted обратно в FALSE.Это свойство, однако, доступно только для чтения.
Я также не вижу ни одного метода, который бы сбрасывал это свойство (я ожидаю, что либо Завершить, Завершить или что-то еще).