Пример #1
0
        public void Post_ApproveBookOrder_WhenBookOrderIsNew_ShouldApproveBookOrder()
        {
            BookOrder bookOrder = BookOrder.CreateNew("SupplierFoo", Guid.NewGuid());

            bookOrder.State.Should().Be(BookOrderState.New);
            BookOrderRepositoryInMemory.Store(bookOrder);

            StartServer();

            // act
            var result = Client.Post($"bookOrders/{bookOrder.Id}/approve", null);

            // assert
            result.StatusCode.Should().Be(HttpStatusCode.OK);
            var storedBookOrder = BookOrderRepositoryInMemory.Get(bookOrder.Id);

            storedBookOrder.State.Should().Be(BookOrderState.Approved);
        }
Пример #2
0
        public void Post_SendBookOrder_WhenBookOrderIsApproved_ShouldSendBookOrder()
        {
            BookOrder bookOrder = BookOrder.CreateNew("SupplierFoo", Guid.NewGuid());

            bookOrder.Approve();
            BookOrderRepositoryInMemory.Store(bookOrder);

            StartServer();

            // act
            var result = Client.Post($"bookOrders/{bookOrder.Id}/send", null);

            // assert
            result.StatusCode.Should().Be(HttpStatusCode.OK);
            var storedBookOrder = BookOrderRepositoryInMemory.Get(bookOrder.Id);

            storedBookOrder.State.Should().Be(BookOrderState.Sent);

            BookSupplierGatewayInMemory.SentBookOrders.Count().Should().Be(1);
            BookSupplierGatewayInMemory.SentBookOrders[0].Id.Should().Be(bookOrder.Id);
            BookSupplierGatewayInMemory.SentBookOrders[0].State.Should().Be(BookOrderState.Sent);
        }