Example #1
0
        public virtual bool Validate(Banknote banknote)
        {
            if (!IsAvailable(banknote))
            {
                return(_nextHandler != null && _nextHandler.Validate(banknote));
            }
            var remainder = banknote.Nominal % Value;

            if (remainder == 0)
            {
                return(true);
            }
            var transformed = new Banknote
            {
                Currency = banknote.Currency,
                Nominal  = remainder
            };

            return(_nextHandler != null && _nextHandler.Validate(transformed));
        }
Example #2
0
        public bool Validate(string banknote)
        {
            var banknoteObject = GetBanknote(banknote);

            return(_handler.Validate(banknoteObject));
        }