On Fri, Mar 13, 2020 at 04:52:02PM -0700, Jakub Kicinski wrote:
On Fri, 13 Mar 2020 16:31:25 -0700 Kees Cook wrote:
@@ -326,7 +387,8 @@ } \ static void fixture_name##_##test_name( \ struct __test_metadata __attribute__((unused)) *_metadata, \
FIXTURE_DATA(fixture_name) __attribute__((unused)) *self)
FIXTURE_DATA(fixture_name) __attribute__((unused)) *self, \
const FIXTURE_PARAMS(fixture_name) __attribute__((unused)) *params)
Could this be done without expanding the function arguments? (i.e. can the params just stay attached to the __test_metadata, perhaps having the test runner adjust a new "current_param" variable to point to the current param? Having everything attached to the single __test_metadata makes a lot of things easier, IMO.
Sure! I felt a little awkward dereferencing _metadata in the test, so I followed the example of self. But I can change.
Can I add a macro like CURRENT_PARAM() that would implicitly use _metadata?
Yeah, that seems cleaner. Thanks! This is very cool. :)