Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }