public RecalculationTests()
        {
            var cnStr = TestConfiguration.Instance.ConnectionString;

            _customerDbRepository = new CustomerDbRepository(cnStr, 72000);
            _pricingRepository    = new PricingRepository(cnStr, 72000);
        }
Exemplo n.º 2
0
        public void When_GetCalled_Return_OkResult()
        {
            PricingRepository pricingRepository = new PricingRepository();
            PricingController pricingController = new PricingController(pricingRepository);

            var okResult = pricingController.Compare(3000);

            Assert.IsType <OkObjectResult>(okResult.Result);
        }
Exemplo n.º 3
0
        public ShopServiceTest()
        {
            IArticleRepository articleRepository = new ArticleRepository(InMemoryStorage.Instance);
            IPricingRepository pricingRepository = new PricingRepository(InMemoryStorage.Instance);
            IOrderRepository   orderRepository   = new OrderRepository(InMemoryStorage.Instance);

            this._shopService = new ShopService(articleRepository, pricingRepository, orderRepository, new ConsoleLogger <ShopService>());
            Session.Set(new Buyer("Danijela"));
        }
Exemplo n.º 4
0
        public void When_GetCalled_Return_Tariff()
        {
            PricingRepository pricingRepository = new PricingRepository();
            PricingController pricingController = new PricingController(pricingRepository);

            var okResult = pricingController.Compare(3000);
            var items    = Assert.IsType <List <Product> >(((ObjectResult)okResult.Result).Value);

            Assert.Equal(2, items.Count);
        }
Exemplo n.º 5
0
        private static void Init()
        {
            string path = string.Empty;

            try
            {
                path = ConfigurationManager.AppSettings.Get("PricingDataFilePath");
                PricingRepository repository  = new PricingRepository(path);
                Hashtable         pricingData = repository.GetPricingData();
                Checkout          checkout    = new Checkout(pricingData);
                while (true)
                {
                    Console.WriteLine("Enter 1 to scan data.");
                    Console.WriteLine("Enter 2 to calculate total price");
                    Console.WriteLine("Enter 0 to quit.");
                    string input = Console.ReadLine();
                    if (input == "0")
                    {
                        break;
                    }
                    else if (input == "1")
                    {
                        Console.WriteLine("Enter the item code");
                        string item = Console.ReadLine();
                        try
                        {
                            checkout.scan(item.ToUpper());
                        }
                        catch (ProductNotFoundException exception)
                        {
                            Console.WriteLine(exception.Message);
                        }
                    }
                    else if (input == "2")
                    {
                        Console.WriteLine("Total price is " + checkout.total().ToString());
                    }
                }
            }
            catch (FileNotFoundException fileEx)
            {
                Console.WriteLine(string.Format("Invalid file path " + path + " for pricing data in app.settings"));
                // Console.WriteLine(fileEx.ToString());
            }
            catch (DuplicateKeyException dEx)
            {
                Console.WriteLine(string.Format("Pricing rules has duplicate keys"));
            }
            catch (Exception ex)
            {
                Console.Write("Unknown Exception :");
                Console.WriteLine(ex.ToString());
                Console.WriteLine(typeof(Exception));
            }
        }
        public RecalculationTests(string connectionString)
        {
            var cnStr = TestConfiguration.Instance.ConnectionString;

            if (!string.IsNullOrEmpty(connectionString))
            {
                cnStr = connectionString;
            }
            _customerDbRepository = new CustomerDbRepository(cnStr, 72000);
            _pricingRepository    = new PricingRepository(cnStr, 72000);
        }
 public PricingRepositoryTest()
 {
     this._pricingRepository = new PricingRepository(InMemoryStorage.Instance);
 }