Подтверждение вызова общедоступного метода в том же макетном экземпляре

У меня есть следующий тест

[Test]
public void Attack_TargetWith3Damage_CausesAttackerToDeal3DamageToTarget()
{
    var realAttacker = CreateCreature(damage: 3);
    var wrappedAttacker = A.Fake<ICreature>(x => x.Wrapping(realAttacker));
    var target = A.Fake<ICreature>();
    wrappedAttacker.Attack(target);
    A.CallTo(() => wrappedAttacker.DealDamage(target, 3)).MustHaveHappened();
}

Проблема в том, что вызов DealDamage из метода Attack не регистрируется , поскольку внутри метода this является realAttacker не wrappedAttacker злоумышленником, следовательно, вызов метода не перехватывается.

Как я могу проверить это утверждение? Можно ли это сделать с помощью FakeItEasy? Позволяет ли мне проверить это с помощью другой среды фиксации?

5
задан ckittel 14 August 2011 в 15:39
поделиться