Как изменить тип назначенного объекта с Google Mock?
-
13-12-2019 - |
Вопрос
Я хочу проверить поведение метода путем проверки защищенной переменной назначенного объекта.Следовательно, я хочу ввести объект Mock для этого назначенного объекта.Моя проблема заключается в том, что этот объект создан во время этого метода и не дается параметрам.
bool MappingConfigurationBuilder::buildMappingConfiguration(MappingConfiguration*& mappingConfiguration)
{
...
ConfigurationForColor configurationForColor;
buildConfigurationForColor(configurationForColor);
mappingConfiguration = new MappingConfiguration(configurationForHeight, configurationForColor);
...
return true;
}
.
Этот метод должен создать конфигурациюForColor, измените защищенную переменную на нем в защищенном методе BuildConfigurationForColor (...) и назначить объект к отображению.Я хочу проверить защищенную переменную на ConfigurationForColor.
Могу ли я использовать Google Mock, чтобы изменить тип конфигурации для макета на объект Mock? Или их другая возможность проверить защищенную переменную?
Решение
Звучит так, как будто вам нужен какой-то какой-то Инверсия управления .
Для этого было бы хорошо создать фабрику, который возвращает объекты типа MAPKETCONCGIGGURY (либо издеватели, либо реальные объекты).