예제 #1
0
 private static void RegisterRepositories(GenericRepositoryFactory store)
 {
     store.RegisterSingleton <IMarcaRepository>(m => new Marca());
     //TODO
     store.RegisterSingleton <IModeloRepository>(m => new Modelo(new Marca()));
     //store.RegisterSingleton<IModeloRepository>(m => new Modelo());
 }
예제 #2
0
        public void WhenRepoRegisteredAsSingletonThenGetSameInstance()
        {
            var factory = new GenericRepositoryFactory();

            factory.RegisterSingleton <IMyRepo>(x => new MyRepo());

            var first  = factory.GetRepository <IMyRepo>();
            var actual = factory.GetRepository <IMyRepo>();

            actual.Should().Be.SameInstanceAs(first);
        }