public void Published_event_gets_handled()
        {
            RollbackHandlerRegistry.ImplProvider = new TestImplProv();

            var sem = new SemaphoreSlim(0, 1);
            var bus = new RabbitMqEventBus(new RabbitMqSettings()
            {
                ConnectionString = TestContextUtils.GetParameterOrDefault("rabbitmq-connection-string", "host=localhost"),
            }, Mock.Of <ILogger <RabbitMqEventBus> >());

            var toPublish = new TestAppEvent(new CorrelationId("111"), new TestEvent());

            var handler = new TestHandler(new AppEventRabbitMQBuilder(), (ev) =>
            {
                ev.Should().BeEquivalentTo(toPublish);
                sem.Release();
            });


            var stubImplProvider = new Mock <IImplProvider>();

            stubImplProvider.Setup(provider => provider.Get(typeof(TestHandler)))
            .Returns(handler);
            bus.InitSubscribers("Test.IntegrationTests", stubImplProvider.Object);

            bus.Publish(toPublish);

            if (!sem.Wait(TimeSpan.FromSeconds(60)))
            {
                Assert.Fail();
            }
        }
Exemplo n.º 2
0
        public void SetUp()
        {
            var serverOpt = new UserAuthDbContextOptions()
            {
                ConnectionString = TestContextUtils.GetParameterOrDefault("sqlserver",
                                                                          "Data Source=.;Initial Catalog=AuctionhouseDatabase;Integrated Security=False;User ID=sa;PWD=Qwerty1234;")
            };

            _userAuthenticationDataRepository = new UserAuthenticationDataRepository(serverOpt);
        }
Exemplo n.º 3
0
        public void SetUp()
        {
            var settings = new ImageDbSettings()
            {
                ConnectionString = TestContextUtils.GetParameterOrDefault("mongodb-connection-string", "mongodb://localhost:27017"),
                DatabaseName     = "appDb"
            };
            var dbContext = new ImageDbContext(settings);

            this.dbContext         = dbContext;
            auctionImageRepository = new AuctionImageRepository(dbContext, Mock.Of <ILogger <AuctionImageRepository> >());
        }
Exemplo n.º 4
0
        public void SetUp()
        {
            var serverOpt = new MsSqlConnectionSettings()
            {
                ConnectionString = TestContextUtils.GetParameterOrDefault("sqlserver",
                                                                          "Data Source=.;Initial Catalog=AuctionhouseDatabase;Integrated Security=False;User ID=sa;PWD=Qwerty1234;")
            };

            userRepository = new MsSqlUserRepository(serverOpt);
            user           = new User();
            user.Register("test");
        }
Exemplo n.º 5
0
        public void SetUp()
        {
            var serverOpt = new MsSqlConnectionSettings()
            {
                ConnectionString = TestContextUtils.GetParameterOrDefault("sqlserver",
                                                                          "Data Source=.;Initial Catalog=AuctionhouseDatabase;Integrated Security=False;User ID=sa;PWD=Qwerty1234;")
            };

            auctionRepository = new MsSqlAuctionRepository(serverOpt);
            user = new User();
            user.Register("Test username");
            user.AddCredits(1000);
            user.MarkPendingEventsAsHandled();
        }
        public void RollbackHandler_gets_called_once()
        {
            int called          = 0;
            var sem             = new SemaphoreSlim(0, 1);
            var toPublish       = new TestAppEvent(new CorrelationId("123"), new TestEvent(), new TestCommandBase());
            var rollbackHandler = new TestCommandRollbackHandler(new Action <IAppEvent <Event> >(ev =>
            {
                called++;
                Assert.IsTrue(CheckRollbackAppEvent(ev));
                sem.Release();
            }));

            rollbackHandler.Throws = true;

            RollbackHandlerRegistry.ImplProvider = new TestImplProv();
            RollbackHandlerRegistry.RegisterCommandRollbackHandler(nameof(TestCommandBase), provider => rollbackHandler);

            var bus = new RabbitMqEventBus(new RabbitMqSettings()
            {
                ConnectionString = TestContextUtils.GetParameterOrDefault("rabbitmq-connection-string", "host=localhost"),
            }, Mock.Of <ILogger <RabbitMqEventBus> >());

            var handler = new TestHandler(new AppEventRabbitMQBuilder(), null);

            handler.Throws = true;

            bus.InitSubscribers(new[]
            {
                new RabbitMqEventConsumerFactory(() => handler, "test"),
            });

            bus.Publish(toPublish);

            if (!sem.Wait(TimeSpan.FromSeconds(60)))
            {
                Assert.Fail();
            }
            ;
            Thread.Sleep(10);

            called.Should()
            .Be(1);
        }