Si vous testez la mise en œuvre, pourquoi essayez-vous de vous en moquer ? Pourquoi ne pas simplement CageThe(IAnimal) et ensuite vérifier que Animals contient cet IAnimal ?
Je comprends que vous vous moquez des IAnimals, vu qu'apparemment vous n'avez pas encore d'animaux concrets avec lesquels jouer, mais pourquoi ne pas simplement en faire des souches, car évidemment vous ne vous attendez pas à ce qu'il leur arrive autre chose en plus d'être mis dans la liste ?
Modifier : Quelque chose à peu près dans ce sens (non testé, peut ne pas compiler, peut manger votre chien, etc.) :
[TestFixture]
public class ZooTest
{
[Test]
public void ZooCagesAnimals()
{
MockRepository mockery = new MockRepository();
IAnimal mockLion = mockery.Stub<IAnimal>();
IAnimal mockRhino = mockery.Stub<IAnimal>();
IZoo zoo = new Zoo();
zoo.CageThe(mockLion);
zoo.CageThe(mockRhino);
List<IAnimal> animals = new List<IAnimal>(zoo.Animals);
Assert.IsTrue(animals.Contains(mockLion));
Assert.IsTrue(animals.Contains(mockRhino));
}
}