Example #1
0
        protected override Result <Power> CalculatePower(IPowerContext context)
        {
            if (String.Compare(context.SuperHero, "Flash", StringComparison.InvariantCultureIgnoreCase) == 0)
            {
                return(new Power(context.SuperHero, "Speed", 700));
            }

            return(Result <Power> .ICantResolver());
        }
Example #2
0
        protected override Result <Power> CalculatePower(IPowerContext context)
        {
            if (string.Compare(context.SuperHero, "Batman", StringComparison.InvariantCultureIgnoreCase) == 0)
            {
                return(new Power(context.SuperHero, "All powers, because I HAVE MONEY", 1000));
            }

            return(Result <Power> .ICantResolver());
        }
Example #3
0
        public virtual Result <Power> GetPower(IPowerContext context)
        {
            var result = CalculatePower(context);

            if (result.IsSuccess || result.IsError)
            {
                return(result);
            }

            if (result.IsAnotherRule && _next != null)
            {
                return(_next.GetPower(context));
            }

            return("Este Super herói não tem poderes!?");
        }
Example #4
0
 public BatmanPowerTest()
 {
     _powerTest = new BatmanPower(null);
     _context   = new PowerContext();
 }
Example #5
0
 public HulkPowerTest()
 {
     _powerTest = new HulkPower(null);
     _context = new PowerContext();
 }
Example #6
0
 public PowerJob(IPower power, IPowerContext powerContext)
 {
     _power        = power;
     _powerContext = powerContext;
 }
Example #7
0
 protected abstract Result <Power> CalculatePower(IPowerContext context);
Example #8
0
 public FlashPowerTest()
 {
     _powerTest = new FlashPower(null);
     _context   = new PowerContext();
 }