//init public SqlEventSettingsQueries(ISenderDbContextFactory dbContextFactory, INotificationsMapperFactory mapperFactory , IDispatchTemplateQueries <long> dispatchTemplateQueries) { _dbContextFactory = dbContextFactory; _mapper = mapperFactory.GetMapper(); _dispatchTemplateQueries = dispatchTemplateQueries; }
//init public SqlSignalDispatchQueries(SqlConnectionSettings connectionSettings , ISenderDbContextFactory dbContextFactory, INotificationsMapperFactory mapperFactory) { _connectionSettings = connectionSettings; _dbContextFactory = dbContextFactory; _mapper = mapperFactory.GetMapper(); }
//methods public override void SpecInit(INeedDbContext instance) { if (_isInitialized) { return; } ISenderDbContextFactory factory = instance.Mocker.GetServiceInstance <ISenderDbContextFactory>(); factory.InitializeDatabase(); _isInitialized = true; }
private static void InitDatabase(IContainer container) { bool dbExists = false; ISenderDbContextFactory contextFactory = container.Resolve <ISenderDbContextFactory>(); using (SenderDbContext context = contextFactory.GetDbContext()) { var creator = (SqlServerDatabaseCreator)context.Database.GetService <IDatabaseCreator>(); dbExists = creator.Exists(); } if (dbExists) { return; } contextFactory.InitializeDatabase(); var deliveryTypeQueries = container.Resolve <ISubscriberDeliveryTypeSettingsQueries <SubscriberDeliveryTypeSettingsLong, long> >(); deliveryTypeQueries.Insert(new List <SubscriberDeliveryTypeSettingsLong> { new SubscriberDeliveryTypeSettingsLong { SubscriberId = 1, DeliveryType = (int)Model.DeliveryTypes.Email, Address = "*****@*****.**", IsEnabled = true } }).Wait(); var categoryQueries = container.Resolve <ISubscriberCategorySettingsQueries <SubscriberCategorySettings <long>, long> >(); categoryQueries.Insert(new List <SubscriberCategorySettings <long> > { new SubscriberCategorySettings <long> { SubscriberId = 1, DeliveryType = (int)Model.DeliveryTypes.Email, CategoryId = (int)CategoryTypes.CustomerGreetings, IsEnabled = true } }).Wait(); }
//methods public override void SpecInit(INeedDbContext instance) { dynamic specsDynamic = instance; AutoMockedContainer autoMockContainer = specsDynamic.Mocker.MoqAutoMocker.Container; string connectionString = @"Data Source=.\;Initial Catalog=SanatanaNotificationsSpecs;integrated security=true;MultipleActiveResultSets=True;"; var connection = new SqlConnectionSettings { ConnectionString = connectionString, Schema = "dbo" }; autoMockContainer.Configure(cfg => { cfg.For <SqlConnectionSettings>().Use(connection); cfg.For <ISenderDbContextFactory>().Use <SenderDbContextFactory>(); cfg.For <INotificationsMapperFactory>().Use <NotificationsMapperFactory>(); cfg.For <IDispatchTemplateQueries <long> >().Use <SqlDispatchTemplateQueries>(); cfg.For <SqlDispatchTemplateQueries>().Use <SqlDispatchTemplateQueries>(); cfg.For <SqlEventSettingsQueries>().Use <SqlEventSettingsQueries>(); cfg.For <SqlSignalBounceQueries>().Use <SqlSignalBounceQueries>(); cfg.For <SqlSignalDispatchQueries>().Use <SqlSignalDispatchQueries>(); cfg.For <SqlSignalEventQueries>().Use <SqlSignalEventQueries>(); cfg.For <SqlStoredNotificationQueries>().Use <SqlStoredNotificationQueries>(); cfg.For <SqlSubscriberCategorySettingsQueries>().Use <SqlSubscriberCategorySettingsQueries>(); cfg.For <SqlSubscriberDeliveryTypeSettingsQueries>().Use <SqlSubscriberDeliveryTypeSettingsQueries>(); cfg.For <SqlSubscriberQueries>().Use <SqlSubscriberQueries>(); cfg.For <SqlSubscriberScheduleSettingsQueries>().Use <SqlSubscriberScheduleSettingsQueries>(); cfg.For <SqlSubscriberTopicSettingsQueries>().Use <SqlSubscriberTopicSettingsQueries>(); }); ISenderDbContextFactory factory = autoMockContainer.GetInstance <ISenderDbContextFactory>(); instance.DbContext = factory.GetDbContext(); instance.DbContext.ChangeTracker.QueryTrackingBehavior = Microsoft.EntityFrameworkCore.QueryTrackingBehavior.NoTracking; }
//init public SqlSignalBounceQueries(ISenderDbContextFactory dbContextFactory , INotificationsMapperFactory mapperFactory) { _dbContextFactory = dbContextFactory; _mapper = mapperFactory.GetMapper(); }
//init public SqlDispatchTemplateQueries(ISenderDbContextFactory dbContextFactory, INotificationsMapperFactory mapperFactory) { _dbContextFactory = dbContextFactory; _mapper = mapperFactory.GetMapper(); }
//init public SqlSubscriberTopicSettingsQueries(SqlConnectionSettings connectionSettings, ISenderDbContextFactory dbContextFactory) { _connectionSettings = connectionSettings; _dbContextFactory = dbContextFactory; }
//init public SqlConsolidationLockQueries(ISenderDbContextFactory dbContextFactory , INotificationsMapperFactory mapperFactory) { _dbContextFactory = dbContextFactory; _mapper = mapperFactory.GetMapper(); }
//init public SqlSubscriberScheduleSettingsQueries(ISenderDbContextFactory dbContextFactory , INotificationsMapperFactory mapperFactory) { _dbContextFactory = dbContextFactory; _mapper = mapperFactory.GetMapper(); }
//init public SqlSubscriberCategorySettingsQueries(ISenderDbContextFactory dbContextFactory, SqlConnectionSettings connectionSettings) { _dbContextFactory = dbContextFactory; _connectionSettings = connectionSettings; }