Robert Atkins
Robert Atkins

Reputation: 24668

Can OCMockito stub a method that takes a `const void *` parameter?

My MessageSerializer class has a method whose signature looks like this:

- (Message *)deserialize:(const void *)buffer length:(NSUInteger)length;

Can I use OCMockito to stub it? Where serializer is my mock serializer, the compiler approves of all these following forms in my test method:

[given([serializer deserialize:[data bytes] length:[data length]]) willReturn:message];
[given([serializer deserialize:(__bridge const void *)anything() length:[data length]]) willReturn:message];
[given([serializer deserialize: CFBridgingRetain(anything()) length:[data length]]) willReturn:message];

... but none of them cause the mock to return "message" to the class under test when deserialize:length: is called.

Upvotes: 2

Views: 300

Answers (1)

Jon Reid
Jon Reid

Reputation: 20980

OCMockito doesn't support const void * parameters at this time. I'd recommend making a hand-rolled stub.

Upvotes: 1

Related Questions