public async Task A_handler_responds_to_a_message()
        {
            _harness = new InMemoryTestHarness();
            _handler = _harness.Handler <A>(async context => context.Respond(new B()));

            await _harness.Start();

            await _harness.InputQueueSendEndpoint.Send(new A(), x => x.ResponseAddress = _harness.BusAddress);
        }
        public async Task Setup()
        {
            _harness = new InMemoryTestHarness();
            _handler = _harness.Handler <A>();

            await _harness.Start();

            await _harness.InputQueueSendEndpoint.Send(new A());

            await _harness.InputQueueSendEndpoint.Send(new B());
        }
        public async Task Setup()
        {
            _harness = new InMemoryTestHarness();
            _handler = _harness.Handler <A>();

            await _harness.Start();

            await _harness.Bus.Publish(new A());

            await _harness.Bus.Publish(new B());
        }
示例#4
0
        public async Task Should_connect_locally_with_test_harness_and_a_handler()
        {
            var harness = new AmazonSqsTestHarness();
            HandlerTestHarness <PingMessage> handler = harness.Handler <PingMessage>(async context =>
            {
            });

            await harness.Start();

            await harness.InputQueueSendEndpoint.Send(new PingMessage());

            await harness.Stop();
        }
        public async Task InitializeAsync()
        {
            _bus = new InMemoryTestHarness {
                TestTimeout = TimeSpan.FromSeconds(2)
            };
            _handler = _bus.Handler <TestMessage>();

            _bus.OnConfigureBus += cfg =>
            {
                cfg.UseSerilog();
                cfg.AddJsonQueueTableSqlServerGateway(_dbFixture.TableName,
                                                      _dbFixture.GetConnection,
                                                      TimeSpan.FromMilliseconds(100));
            };

            await _bus.Start();
        }
示例#6
0
        public async Task Setup()
        {
            _harness = new AmazonSqsTestHarness();
            _handler = _harness.Handler <A>(async context =>
            {
                var endpoint = await context.GetSendEndpoint(context.SourceAddress);

                await endpoint.Send(new C());

                await context.Publish(new D());
            });

            await _harness.Start();

            await _harness.InputQueueSendEndpoint.Send(new A());

            await _harness.Bus.Publish(new B());
        }
示例#7
0
        public async Task Should_connect_locally_with_test_harness_and_a_publisher_happy()
        {
            var harness = new ActiveMqTestHarness();
            HandlerTestHarness <PingMessage> handler = harness.Handler <PingMessage>();

            await harness.Start();

            for (var i = 0; i < 100; i++)
            {
                await harness.Bus.Publish(new PingMessage());
            }

            var count = await handler.Consumed.SelectAsync().Count();

            Assert.That(count, Is.EqualTo(100));

            await harness.Stop().OrTimeout(s: 5);
        }
示例#8
0
        public async Task Should_connect_locally_with_test_harness_and_a_publisher()
        {
            var harness = new AmazonSqsTestHarness();
            HandlerTestHarness <PingMessage> handler  = harness.Handler <PingMessage>();
            HandlerTestHarness <PongMessage> handler2 = harness.Handler <PongMessage>();

            await harness.Start();

            await harness.Bus.Publish(new PingMessage());

            Assert.That(handler.Consumed.Select().Any(), Is.True);

            //            await Task.Delay(20000);

            await harness.Bus.Publish(new PongMessage());

            Assert.That(handler2.Consumed.Select().Any(), Is.True);

            await harness.Stop().OrTimeout(s: 5);

            await harness.Stop();
        }