Учитывая абстрактную реализацию фабрики:
public class FooFactory : IFooFactory {
public IFoo Create(object param1, object param2) {
return new Foo(param1, param2);
}
}
Какие модульные тесты будут написаны для этого класса? Как я могу убедиться, что param1 и param2 были перенаправлены на создание Foo? Должен ли я сделать эти общедоступные свойства Foo? Разве это не нарушило бы инкапсуляцию? Или я должен оставить это для интеграционного тестирования?