public When_using_EntityFramework()
        {
            _sagaDbContextFactory = new DelegateSagaDbContextFactory <ShoppingChore>(
                () => new ShoppingChoreSagaDbContext(LocalDbConnectionStringProvider.GetLocalDbConnectionString()));

            _repository = new Lazy <ISagaRepository <ShoppingChore> >(() => EntityFrameworkSagaRepository <ShoppingChore> .CreatePessimistic(_sagaDbContextFactory));
        }
Esempio n. 2
0
        public Locating_an_existing_ef_saga()
        {
            _sagaDbContextFactory =
                new DelegateSagaDbContextFactory(() => new SimpleSagaDbContext(LocalDbConnectionStringProvider.GetLocalDbConnectionString()));

            _sagaRepository = new Lazy <ISagaRepository <SimpleSaga> >(() => EntityFrameworkSagaRepository <SimpleSaga> .CreatePessimistic(_sagaDbContextFactory));
        }
Esempio n. 3
0
        public async Task Send_message_to_test_consumer()
        {
            _store = new EntityFrameworkAuditStore(
                LocalDbConnectionStringProvider.GetLocalDbConnectionString(), "audit");
            using (var dbContext = _store.AuditContext)
                await dbContext.Database.ExecuteSqlCommandAsync("TRUNCATE TABLE audit");

            _harness = new InMemoryTestHarness();
            _harness.OnConnectObservers += bus =>
            {
                bus.ConnectSendAuditObservers(_store);
                bus.ConnectConsumeAuditObserver(_store);
            };
            _consumer = _harness.Consumer <TestConsumer>();

            await _harness.Start();

            await _harness.InputQueueSendEndpoint.Send(new A());
        }
Esempio n. 4
0
        public async Task Send_message_to_test_consumer()
        {
            Database.SetInitializer(new DropCreateDatabaseAlways <AuditDbContext>());

            _store = new EntityFrameworkAuditStore(
                LocalDbConnectionStringProvider.GetLocalDbConnectionString(), "audit");
            using (var dbContext = _store.AuditContext)
            {
                dbContext.Database.Initialize(true);
                await dbContext.Database.ExecuteSqlCommandAsync("TRUNCATE TABLE audit");
            }

            _harness = new InMemoryTestHarness();
            _harness.OnConfigureInMemoryBus += configurator =>
            {
                configurator.ConnectSendAuditObservers(_store);
                configurator.ConnectConsumeAuditObserver(_store);
            };
            _consumer = _harness.Consumer <TestConsumer>();

            await _harness.Start();

            await _harness.InputQueueSendEndpoint.Send(new A());
        }
Esempio n. 5
0
        public Locating_an_existing_ef_saga()
        {
            _sagaDbContextFactory = new DelegateSagaDbContextFactory <SimpleSaga>(() =>
                                                                                  new SagaDbContext <SimpleSaga, SimpleSagaMap>(LocalDbConnectionStringProvider.GetLocalDbConnectionString()));

            _sagaRepository = new Lazy <ISagaRepository <SimpleSaga> >(() => new EntityFrameworkSagaRepository <SimpleSaga>(_sagaDbContextFactory));
        }
Esempio n. 6
0
        public When_using_EntityFrameworkConcurrencyFail()
        {
            _sagaDbContextFactory = new DelegateSagaDbContextFactory <ChoirStateOptimistic>(() =>
                                                                                            new ChoirStateOptimisticSagaDbContext(LocalDbConnectionStringProvider.GetLocalDbConnectionString()));

            _repository = new Lazy <ISagaRepository <ChoirStateOptimistic> >(() =>
                                                                             EntityFrameworkSagaRepository <ChoirStateOptimistic> .CreateOptimistic(_sagaDbContextFactory));
        }
Esempio n. 7
0
        protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _discarded = GetTask <bool>();

            _simpleStateMachine = new SimpleStateMachine(x =>
            {
                _discarded.TrySetResult(true);
            });

            _sagaDbContextFactory = new DelegateSagaDbContextFactory <SimpleState>(() =>
                                                                                   new SimpleStateSagaDbContext(LocalDbConnectionStringProvider.GetLocalDbConnectionString()));

            _simpleStateRepository = new Lazy <ISagaRepository <SimpleState> >(() =>
                                                                               EntityFrameworkSagaRepository <SimpleState> .CreatePessimistic(_sagaDbContextFactory));


            configurator.StateMachineSaga(_simpleStateMachine, _simpleStateRepository.Value);

            base.ConfigureInMemoryReceiveEndpoint(configurator);
        }