Example #1
0
        public void CalculatePostage_WhenNoPostagesGivenThenUseFlatRate()
        {
            // total weight = 350
            var basket   = BasketTests.Create350GramBasket();
            var postages = new List <Postage>().AsQueryable();

            postageRepository.BackToRecord();
            postageRepository.Expect(pr => pr.GetAll()).Return(postages);
            postageRepository.Replay();

            Assert.IsFalse(postageService.CalculatePostageFor(basket).Phone, "phone is true");
            Assert.That(postageService.CalculatePostageFor(basket).Price.Amount, Is.EqualTo(10.00M), "Incorrect price calculated");
        }
        PostageResultViewData BuildViewData(int id)
        {
            var basket  = basketRepository.GetById(id);
            var postage = postageService.CalculatePostageFor(basket);

            return(new PostageResultViewData
            {
                Description = postage.Description,
                PostageTotal = postage.Phone ? "Phone" : postage.Price.ToStringWithSymbol(),
                TotalWithPostage = postage.Phone ? "Phone" : (basket.Total + postage.Price).ToStringWithSymbol(),
                Country = basket.Country
            });
        }
Example #3
0
 private void CalcuatePostage(Order order, Basket basket)
 {
     order.Postage = postageService.CalculatePostageFor(basket);
 }