Well, ok, I'm starting to see this your way now. I'll make this change, because of two reasons:
1) I'll need some kind of data structure called "test_context" anyway, whether or not those pointers are copied there. Future tests will probably require the ability to store additional data during the lifetime of the test, that's not one of those data sample points.
2) The teardown function in some of those examples frees certain data pointers, and not others. That's because the same data is used on two pointers, so you can't free it twice. However, that's ugly, and could be better handled using a separate copy of the pointer.