Usando StructureMap con pruebas unitarias
Estoy usando StructureMap en un proyecto web para DI IOC. Funciona perfecto, pero no tengo idea de cómo escribir pruebas unitarias con StructureMap.
¿Debo hacer esto en AssemblyInitialize start Configuration de StructureMap como en global.asax, excepto para datacontext para no usar Live LinqToSqlDataContext pero algunos datos de memoria como este:
[AssemblyInitialize]
public static void Start()
{
ObjectFactory.Configure(x =>
{
x.For<IDataContext>().HttpContextScoped().Use<MemoryDataContext>()
.Ctor<string>("connectionString")
.Is(ConfigurationManager.ConnectionStrings["DEVConnection"].ConnectionString);
x.For<IDepartamentRepository>().Use<DepartamentDB>();
x.For<IDevelopmentProcess>().Use<DevelopmentProcesses>().OnCreation(c => c.User = Current.CurrentUser);
x.For<IActivityProcess>().Use<ActivitiesProcess>().OnCreation(c=> c.User = Current.CurrentUser);
x.For<IDevDeveloperRepository>().Use<DevDeveloperDB>();
x.For<IDevelopmentRepository>().Use<DevelopmentDB>();
x.For<IActivityRepository>().Use<ActivityDB>();
x.For<IActivityTypeRepository>().Use<ActivityTypeDB>();
x.For<IDevUserRepository>().Use<DevUsersDB>();
x.For<IAttachmentRepository>().Use<AttachmentDB>();
}
);
}
y luego utilizo las pruebas ObjectFactory.GetInstance () o ¿cómo hago esto?