public void MobWasNotFound_NothingHappend_Copy() { var bot = CreateBot(); var result = bot.KillMob(); Assert.That(result, Is.False); A.CallTo(() => _legs.MoveTo(_mobLocation)).MustNotHaveHappened(); A.CallTo(() => _cellphone.ReportResult(A <Report> .Ignored)).MustNotHaveHappened(); A.CallTo(() => _eyes.CheckMobStatus()).MustNotHaveHappened(); }
public bool KillMob() { var location = _eyes.CheckForMob(); if (location == 0) { return(false); } _legs.MoveTo(location); var damageList = new List <int>(); for (var i = 0; i < 3; i++) { damageList.Add(_weapon.Strike()); } _cellphone.ReportDamage(damageList.ToArray()); var mobStatus = _eyes.CheckMobStatus(); _cellphone.ReportResult(new Report { IsSuccess = mobStatus }); return(true); //_weapon.Ext(2); //WeaponExtensions.Ext(_weapon, 2); }
public void SetUp() { _weapon = A.Fake <IWeapon>(); _legs = A.Fake <ILegs>(); _eyes = A.Fake <IEyes>(); _cellphone = A.Fake <ICellphone>(); _checkMobStatusResult = true; _mobLocation = 0; _reports = new List <Report>(); A.CallTo(() => _eyes.CheckForMob()).ReturnsLazily(() => _mobLocation); A.CallTo(() => _weapon.Strike()).Returns(1); A.CallTo(() => _eyes.CheckMobStatus()).ReturnsLazily(() => _checkMobStatusResult); A.CallTo(() => _cellphone.ReportResult(A <Report> .Ignored)) .Invokes((Report report) => { _reports.Add(report); }); }