Question

Je veux vérifier le comportement d'une méthode en testant une variable protégée d'un objet attribué.Par conséquent, je veux injecter un faux objet à cet objet assigné.Mon problème est que cet objet est créé lors de cette méthode et n'est pas donné à un groupe de paramètres.

bool MappingConfigurationBuilder::buildMappingConfiguration(MappingConfiguration*& mappingConfiguration)
{
  ...
  ConfigurationForColor configurationForColor;
  buildConfigurationForColor(configurationForColor);
  mappingConfiguration = new MappingConfiguration(configurationForHeight, configurationForColor);
  ...
  return true;
}

Cette méthode doit créer un configurationForColor, modifier une variable protégée sur celle-ci dans la méthode protégée BuildConfigurationForColor (...) et attribuer l'objet à une cartographieConfiguration.Je veux vérifier la variable protégée sur ConfigurationForColor.

Puis-je utiliser Google Mock pour modifier le type de configurationForColor vers un objet moqueur? Ou est-il une autre possibilité de tester la variable protégée?

Était-ce utile?

La solution

On dirait que vous avez besoin d'une sorte de Inversion du contrôle .

Pour cela, il serait bon de créer une usine, qui renvoie des objets de type MappingConfiguration (mot moqueurs ou objets réels).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top