我想通过测试分配对象的受保护变量来检查方法的行为。因此,我想为这个分配的对象注入一个模拟对象。我的问题是该对象是在此方法期间创建的,并且没有通过参数给出。
bool MappingConfigurationBuilder::buildMappingConfiguration(MappingConfiguration*& mappingConfiguration)
{
...
ConfigurationForColor configurationForColor;
buildConfigurationForColor(configurationForColor);
mappingConfiguration = new MappingConfiguration(configurationForHeight, configurationForColor);
...
return true;
}
此方法应创建一个 ConfigurationForColor,在受保护的方法 buildConfigurationForColor(...) 中更改其上的受保护变量,并将对象分配给 MappingConfiguration。我想检查 configurationForColor 上的受保护变量。
我可以使用 Google Mock 将 configurationForColor 的类型更改为模拟对象吗?还是他们测试受保护变量的另一种可能性?