private static void SmartHappyHoursOrderCalculatorTest()
        {
            Customer customer = new Customer("Anna", "Kowalska");

            Order order = CreateOrder(customer);

            ICanDiscountStrategy       canDiscountStrategy       = new HappyHoursCanDiscountStrategy(TimeSpan.Parse("09:00"), TimeSpan.Parse("16:00"));
            ICalculateDiscountStrategy calculateDiscountStrategy = new PercentageCalculateDiscountStrategy(0.2m);

            SmartDiscountOrderCalculator calculator = new SmartDiscountOrderCalculator(canDiscountStrategy, calculateDiscountStrategy);

            decimal discount = calculator.CalculateDiscount(order);

            Console.WriteLine($"Original amount: {order.Amount:C2} Discount: {discount:C2}");
        }
        private static void PromotionTest()
        {
            ICanDiscountStrategy       canDiscountStrategy       = new HappyHoursCanDiscountStrategy(TimeSpan.Parse("09:00"), TimeSpan.Parse("16:00"));
            ICalculateDiscountStrategy calculateDiscountStrategy = new PercentageCalculateDiscountStrategy(0.2m);

            Promotion promotion = new Promotion
            {
                Id   = Guid.NewGuid(),
                Name = "Happy Hours 2020",
                From = DateTime.Parse("2020-01-01"),
                To   = DateTime.Parse("2020-12-31"),
                CanDiscountStrategy       = canDiscountStrategy,
                CalculateDiscountStrategy = calculateDiscountStrategy
            };

            Customer customer = new Customer("Anna", "Kowalska");
            Order    order    = CreateOrder(customer);

            order.Promotion = promotion;
        }