Wednesday, 15 July 2015

Capture GMOCK string parameter -



Capture GMOCK string parameter -

if have next interface fellow member function:

virtual bool print_string(const char* data) = 0;

with next mock

mock_method1(print_string, bool(const char * data));

is possible capture string passed print_string()?

i tried to:

char out_string[20]; // savearg<0>(out_string); // saves first char of sting

this saves first char of sting not whole string.

class

struct foo { virtual bool print_string(const char* data) = 0; };

mock

struct foomock { mock_method1(print_string, bool(const char * data)); };

test

struct strarg { bool print_string(const char* data) { arg = data; homecoming true; } string arg; }; test(footest, first) { foomock f; strarg out_string; expect_call(f, print_string(_)) .willonce(invoke(&out_string, &strarg::print_string)); f.print_string("foo"); expect_eq(string("foo"), out_string.arg); }

you can utilize invoke capture parameter value in structure.

gmock

No comments:

Post a Comment