Example #1
0
 private void AddItemToBasket(string productReference,
                              string consumerId)
 {
     _basketResource = _basket.CreateItem(consumerId,
                                          _basketResource.Id,
                                          productReference);
 }
Example #2
0
        public BasketResource GetBasket(Guid transactionNumber)
        {
            if (transactionNumber == null || transactionNumber == Guid.Empty)
            {
                throw new ArgumentNullException(nameof(transactionNumber));
            }

            try
            {
                var basket = _dataStoreContext.Baskets.Where(x => x.TransactionNumber == transactionNumber).FirstOrDefault();
                if (basket != null)
                {
                    var basketResource = new BasketResource
                    {
                        TransactionNumber  = basket.TransactionNumber,
                        NumberOfPassengers = basket.NumberOfPassengers,
                        Domain             = basket.Domain,
                        AgentId            = basket.AgentId,
                        ReferrerUrl        = basket.ReferrerUrl,
                        UserId             = basket.UserId,
                        SelectedCurrency   = basket.SelectedCurrency,
                        ReservationSystem  = basket.ReservationSystem
                    };
                    return(basketResource);
                }
            }
            catch (DataStoreException ex)
            {
                logger.Error($"An exception has been thrown while Getting Basket: in method GetBasket: {ex.Message}");
                throw;
            }
            return(null);
        }
Example #3
0
 private void UpdateItemQuantityTo(int newQuantity, string productReference, string consumerId)
 {
     _basketResource = _basket.UpdateItemQuantity(consumerId,
                                                  _basketResource.Id,
                                                  productReference,
                                                  newQuantity);
 }
Example #4
0
        public void Post_Basket_Adds_Basket_To_Store()
        {
            var basketResource = new BasketResource {Items = new BasketItemResource[]{}};

            _basketLogic.PostBasket(basketResource);

            _basketStore.AssertWasCalled(bs => bs.Add(Arg<Domain.Basket>.Is.Anything));
        }
Example #5
0
        public void Post_Basket_Adds_All_Basket_Items_To_Store()
        {
            var basketResource = new BasketResource {Items = new[] {new BasketItemResource(), new BasketItemResource(), new BasketItemResource()}};

            _basketLogic.PostBasket(basketResource);

            _basketItemStore.AssertWasCalled(bis => bis.Add(Arg<BasketItem>.Is.Anything), x => x.Repeat.Times(3));
        }
Example #6
0
        public void Post_Basket_Saves_Basket_Items_With_Correct_Basket_Id()
        {
            const int basketId = 1234;
            var basketResource = new BasketResource {Items = new[] {new BasketItemResource {ProductCode = "abc123"}}};
            _basketStore.Stub(bs => bs.Add(Arg<Domain.Basket>.Is.Anything)).Do(new Action<Domain.Basket>(b => { b.Id = basketId; }));

            _basketLogic.PostBasket(basketResource);

            _basketItemStore.AssertWasCalled(bis => bis.Add(Arg<BasketItem>.Matches(bi => bi.BasketId == basketId)));
        }
Example #7
0
        internal static BrowserResponse Post_Basket(BasketResource basketResource)
        {
            var response = Context.Browser.Post("/baskets", with =>
                                                                {
                                                                    with.JsonBody(basketResource);
                                                                    with.Header("Content-Type", Context.NancyShopBasketJsonContentType);
                                                                    with.Accept(Context.NancyShopBasketJsonContentType);
                                                                });

            return response;
        }
        public void SetUp()
        {
            var response = BasketFacade.Post_Basket(new BasketResource {Items = new List<BasketItemResource> {new BasketItemResource {ProductCode = "abc123"}}});
            _basketResource = response.Body.DeserializeJson<BasketResource>();
            _basketLocation = response.GetLocation();

            _response = Context.Browser.Post(_basketLocation + "/items", with =>
                                                                      {
                                                                          with.JsonBody(new BasketItemResource {ProductCode = ProductCode});
                                                                          with.Accept(Context.NancyShopBasketItemJsonContentType);
                                                                          with.Header("Content-Type", Context.NancyShopBasketItemJsonContentType);
                                                                      });
        }
 public void SetUp()
 {
     var basket = new BasketResource {Items = new List<BasketItemResource> {new BasketItemResource {ProductCode = ProductCode}}};
     _response = BasketFacade.Post_Basket(basket);
 }
Example #10
0
 private void GetBasketOfConsumer(string consumerId)
 {
     _basketResource = _basket.Get(consumerId, _basketResource.Id);
 }
Example #11
0
 private void CreateBasketForConsumer(string consumerId)
 {
     _basketResource = _basket.Create(consumerId);
 }
Example #12
0
 private void SetupResources(string baseUri)
 {
     Basket = new BasketResource(new BaseClient(new HttpClient(), baseUri));
     Item   = new ItemResource(new BaseClient(new HttpClient(), baseUri));
 }
Example #13
0
 public OrderApiClient(HttpClient client)
 {
     Basket = new BasketResource(new BaseClient(client, client.BaseAddress.ToString()));
     Item   = new ItemResource(new BaseClient(client, client.BaseAddress.ToString()));
 }