public void AddVisitor(ICellVisitor visitor) { VisitCell += visitor.VisitCellHandler; VisitWall += visitor.VisitWallHandler; PostProcess += visitor.PostProcessHandler; PreProcess += visitor.PreProcessHandler; }
public void HealthyCellConstructorSetsDefaultParameters( ICellVisitor visitor, HealthyCell sut) { sut.Accept(visitor); VerifyHealhyCellWithDefault(visitor); }
private static void VerifyHealhyCellWithDefault(ICellVisitor visitor) { Mock.Get(visitor) .Verify(v => v.VisitCell(It.Is <bool>(alive => alive), It.Is <ushort>(selfSig => selfSig == ushort.MaxValue), It.Is <ushort>(alertSig => alertSig == ushort.MinValue)), Times.Once); }
private static void VerifyCellIsAlive(ICellVisitor visitor, bool isAlive) { Mock.Get(visitor) .Verify(v => v.VisitCell( It.Is <bool>(alive => alive == isAlive), It.IsAny <ushort>(), It.IsAny <ushort>()), Times.Once); Mock.Get(visitor).Reset(); }
internal void InfectedCellIsConstructedWithCorrectAttributes( [Frozen] IGerm germ, [Frozen] ushort signals, [Frozen] bool isAlive, ICellVisitor visitor, InfectedCell sut) { sut.Accept(visitor); VerifyCellExposesCorrectParametersToVisitor(signals, isAlive, visitor); }
internal void CloningALivingCellDoesReplicatesTheGermAndReturnsInfectedCell( [Frozen] IGerm germ, [Frozen] ushort signals, [Frozen] ICellVisitor visitor, LivingInfectedCell sut) { var result = sut.Clone(); result.Should().BeOfType <InfectedCell>(); VerifyTimesGermReplicatIsCalled(1, germ); VerifySignalsAreCloned(sut, result, signals, visitor); }
public void HealthyCellCloneCreatesNewCellWithSameParametersAsParentCell( ICellVisitor visitsParent, ICellVisitor visitsClone, HealthyCell sut) { sut.Accept(visitsParent); var newCell = sut.Clone(); newCell.Accept(visitsClone); newCell.Should().NotBeSameAs(sut); VerifyHealhyCellWithDefault(visitsParent); VerifyHealhyCellWithDefault(visitsClone); }
internal void MatureLyticGermKillsCellWhileCloning( [Frozen(Matching.ImplementedInterfaces)] MatureLyticGerm lyticGerm, [Frozen] ICellVisitor visitor, LivingInfectedCell sut) { bool isAlive = true; bool isNotAlive = false; sut.Accept(visitor); VerifyCellIsAlive(visitor, isAlive); var result = sut.Clone(); result.Accept(visitor); result.Should().BeOfType <InfectedCell>(); VerifyCellIsAlive(visitor, isNotAlive); }
private void VerifySignalsAreCloned(LivingInfectedCell sut, ICell result, ushort signals, ICellVisitor visitor) { sut.Accept(visitor); result.Accept(visitor); Mock.Get(visitor) .Verify(v => v.VisitCell( It.IsAny <bool>(), It.Is <ushort>(self => self == signals), It.Is <ushort>(alert => alert == signals)), Times.Exactly(2)); }
public void Accept(ICellVisitor cellVisitor) => _cell.Accept(cellVisitor);
private static void VerifyCellExposesCorrectParametersToVisitor(ushort signals, bool isAlive, ICellVisitor visitor) { Mock.Get(visitor) .Verify(v => v.VisitCell( It.Is <bool>(alive => alive == isAlive), It.Is <ushort>(self => self == signals), It.Is <ushort>(alert => alert == signals)), Times.Once); }
public void add(ICellVisitor visitor) { all_visitors.Add(visitor); }
public void Accept(ICellVisitor cellVisitor) { cellVisitor.VisitCell(false, 0, 0); }
public void Accept(ICellVisitor cellVisitor) { cellVisitor?.VisitCell(_isAlive, _selfSignal, _alertSignal); }
public ConstrainedCellVisitor(ICellVisitor cell_visitor, Specification<ICell> constraint) { this.cell_visitor = cell_visitor; this.constraint = constraint; }
public T AcceptVisitor <T>(ICellVisitor <T> visitor) { return(visitor.Visit(this)); }
public void Accept(ICellVisitor cellVisitor) { cellVisitor.Visit(this); }