OCMock testing the address of a struct

2019-07-17 05:21发布

I have some code I want to test that is passing around the address of a struct:

MyObject myObject = ...;
MyRecord record = [someObject record];  //record is a @property
[myObject add:&record];

I've mocked someObject to return a record:

MyRecord record = ...;
[[[_mockSomeObject stub] andReturnValue:OCMOCK_VALUE(record)] record];
[[_mockMyObject expect] add:&record];

Unfortunately, OCMock fails (I believe) because pulling the struct out of the NSValue wrapper will always return a different address.

Is there a way to get an expectation to work correctly if one of the parameters is an address of a struct?

1条回答
Juvenile、少年°
2楼-- · 2019-07-17 06:05

Look at this post on returning structs with OCMock. Looks like the OCMOCK_VALUE macro just won't cut it.

查看更多
登录 后发表回答