googlemock - Mache eine Methode, die einen komplexen Datentyp zurückgibt

7

Ich möchte eine Methode vortäuschen, die einen komplexen Datentyp zurückgibt

%Vor%

Dieser Code kompiliert nicht: "macro" MOCK_CONST_METHOD0 "hat 3 Argumente übergeben, benötigt aber nur 2"

Ich denke, dass das googlemock-Makro QMap nicht versteht und das Komma als Parametertrennzeichen interpretiert.

Gibt es eine Möglichkeit, googlemock zu sagen, dass QMap der Rückgabewert ist?

    
Jens Ehrlich 18.04.2012, 10:25
quelle

2 Antworten

16

Verwenden Sie einfach ein typedef wie folgt:

%Vor%     
nabulke 18.04.2012, 10:37
quelle
3

Sie haben Recht, das Komma wird als Parametertrennzeichen interpretiert. Sie können ein Präprozessor-Makro definieren, um zu verhindern, dass das Komma so interpretiert wird.

%Vor%

Bitte beachten Sie, dass dies nicht unbedingt für verschachtelte Makroaufrufe funktioniert. Wenn zum Beispiel MOCK_CONSTANT_METHOD0 den zweiten Parameter an ein anderes Makro übergeben würde, wären Sie wieder in Schwierigkeiten.

    
Markus Mayr 18.04.2012 10:28
quelle

Tags und Links

yii\base\ErrorException
Copied! Copy Stacktrace Search Stackoverflow Search Google Error

PHP Core Warningyii\base\ErrorException

PHP Startup: Unable to load dynamic library 'mongodb.so' (tried: /usr/lib64/php/modules/mongodb.so (/usr/lib64/php/modules/mongodb.so: cannot open shared object file: No such file or directory), /usr/lib64/php/modules/mongodb.so.so (/usr/lib64/php/modules/mongodb.so.so: cannot open shared object file: No such file or directory))

$_GET = [
    'id' => '423761',
    'url' => 'googlemock-mock-a-method-that-returns-a-complex-datatyp',
];

$_SESSION = [
    '__flash' => [],
];