public async Task GetOrder_ShouldReturnOrderDetails()
        {
            // Arrange
            var context = new TestBookStoreAPIContext();
            var order   = DemoData.GetDemoOrder();

            context.Orders.Add(order);
            OrderItem orderItem = new OrderItem
            {
                Id             = Util.Util.GetNewId(),
                OrderId        = order.Id,
                BookId         = "xta",
                SellingPrice   = 499,
                Quantity       = 1,
                ShippingStatus = 0,
                CreatedAt      = new System.DateTime()
            };

            context.OrderItems.Add(orderItem);

            // Act
            var controller = new OrdersController(context);
            var result     = await controller.GetOrder("XyZ") as IHttpActionResult;

            var contentResult = result as OkNegotiatedContentResult <ApiResponse>;
            var orderDetails  = contentResult.Content.Data as OrderDetailsDTO;

            // Assert
            Assert.IsNotNull(result);
            Assert.IsTrue(!contentResult.Content.Error);
            Assert.AreEqual("XyZ", orderDetails.Id);
            Assert.AreEqual(499, orderDetails.TotalAmount);
        }