"On GCC, optimization flag O2 and O3 are not supported. You must compile the test project with -O1 or -O0."
Sounds like they are patching objects in memory. Trompeloeil, for example, doesn't do that.
thrtythreeforty•41m ago
Yikes. "Broken with optimizations" means "broken" to me. Don't screw around with undefined behavior; either you had better avoid it, or your circumvention of the compiler had better be so airtight that it still works with optimizations.
ch33zer•2h ago
Seems very inspired by gmock. Wondering if there's a comparison somewhere?
vhantz•2h ago
I can not imagine when this type of library becomes useful. What's a usage example for this? What do you gain over rolling your own?
bluGill•2h ago
It is / or should be less tedious than a writting a custom class with the return values you need for everything.
I still recomend hand written fakes - but only because and if they model real behavior without the unwanted effects. I find my handwritten cods often has more lines of test code to ensure it works than the real implementation.
bluGill•1h ago
I like that they have the verify as a separare / latter step. Most users of google mock see a mock call and assume that they need to force the call - thus if you change the implementation you are breaking tests but the real code still works because that should be an implementation detail.
drysine•17h ago
Sounds like they are patching objects in memory. Trompeloeil, for example, doesn't do that.
thrtythreeforty•41m ago