コード例 #1
0
            public async Task Should_receive_the_timeout()
            {
                CartItemAdded cartItemAdded = new CartItemAddedCommand {
                    MemberNumber = Guid.NewGuid().ToString()
                };

                await InputQueueSendEndpoint.Send(cartItemAdded);

                ConsumeContext <CartRemoved> removed = await _cartRemoved;
            }
コード例 #2
0
            public async Task Should_receive_the_timeout()
            {
                Task <ConsumeContext <CartRemoved> > handler = ConnectPublishHandler <CartRemoved>();

                CartItemAdded cartItemAdded = new CartItemAddedCommand
                {
                    MemberNumber = Guid.NewGuid().ToString()
                };

                await InputQueueSendEndpoint.Send(cartItemAdded);

                ConsumeContext <CartRemoved> removed = await handler;
            }
コード例 #3
0
            public async Task Should_reschedule_the_timeout_when_items_are_added()
            {
                CartItemAdded cartItemAdded = new CartItemAddedCommand {
                    MemberNumber = Guid.NewGuid().ToString()
                };

                await InputQueueSendEndpoint.Send(cartItemAdded);

                Guid?saga = await _repository.ShouldContainSaga(x => x.MemberNumber == cartItemAdded.MemberNumber &&
                                                                GetCurrentState(x) == _machine.Active, TestTimeout);

                Assert.IsTrue(saga.HasValue);

                await InputQueueSendEndpoint.Send(cartItemAdded);

                ConsumeContext <CartRemoved> removed = await _cartRemoved;
            }
コード例 #4
0
            public async Task Should_cancel_when_the_order_is_submitted()
            {
                CartItemAdded cartItemAdded = new CartItemAddedCommand {
                    MemberNumber = Guid.NewGuid().ToString()
                };

                await InputQueueSendEndpoint.Send(cartItemAdded);

                Guid?saga = await _repository.ShouldContainSaga(x => x.MemberNumber == cartItemAdded.MemberNumber &&
                                                                GetCurrentState(x) == _machine.Active, TestTimeout);

                Assert.IsTrue(saga.HasValue);

                await InputQueueSendEndpoint.Send(new OrderSubmittedEvent(cartItemAdded.MemberNumber));

                ConsumeContext <CartRemoved> removed = await _cartRemoved;

                await Task.Delay(3000);
            }