Я видел несколько примеров того, как настроить класс модульного тестирования для ASP.NET MVC 3 с использованием Ninject и Moq, но все они включают создание репозитория-макета внутри класса тестирования.
Что я хотел бы сделать, так это создать репозиторий mock при запуске или загрузке приложения - так, возможно, в Global.asax.cs - и вместо этого передать его в мой тестовый класс. Таким образом, я могу изменить репозиторий состояния сеанса или репозиторий базы данных в моем методе Ninject AllBindings()
без необходимости изменения класса модульного теста. У меня уже есть это в запуске приложения:
ControllerBuilder.Current.SetControllerFactory(new NinjectControllerFactory());
Я даже могу понять, как поместить команду Bind в global.asax.cs, но как она будет передана в тестовый класс? Когда вы выбираете Test> Run, он проходит даже через global.asax.cs? Я думаю, я не уверен, какой контекст, если таковой имеется, вызывает тестовый класс. Я не могу понять, как это сделать, и я не видел ни одного примера, который бы сначала создавал хранилище, а затем передавал его в тестовый класс.
Возможно ли это, и если да, то как это можно сделать? Заранее спасибо за любой совет!