From 77bd4f994334d6cd36ecd92bf227e9b2561a3678 Mon Sep 17 00:00:00 2001 From: Jannis Baudisch Date: Thu, 1 Apr 2021 10:29:22 +0200 Subject: [PATCH] Add test for function pointers in parameterized tests --- test/testdata/Defs.h | 1 + test/testdata/testRunnerGenerator.c | 11 +++++++++++ test/tests/test_generate_test_runner.rb | 6 +++++- 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/test/testdata/Defs.h b/test/testdata/Defs.h index b1dc83e..58678c1 100644 --- a/test/testdata/Defs.h +++ b/test/testdata/Defs.h @@ -4,5 +4,6 @@ #define EXTERN_DECL extern int CounterSuiteSetup; +extern int isArgumentOne(int i); #endif diff --git a/test/testdata/testRunnerGenerator.c b/test/testdata/testRunnerGenerator.c index b5dd97f..46fc3b4 100644 --- a/test/testdata/testRunnerGenerator.c +++ b/test/testdata/testRunnerGenerator.c @@ -167,6 +167,17 @@ void paratest_ShouldHandleParameterizedTestsThatFail(int Num) TEST_ASSERT_EQUAL_MESSAGE(3, Num, "This call should fail"); } +int isArgumentOne(int i) +{ + return i == 1; +} + +TEST_CASE(isArgumentOne) +void paratest_WorksWithFunctionPointers(int function(int)) +{ + TEST_ASSERT_TRUE_MESSAGE(function(1), "Function should return True"); +} + #ifdef USE_CEXCEPTION void extest_ShouldHandleCExceptionInTest(void) { diff --git a/test/tests/test_generate_test_runner.rb b/test/tests/test_generate_test_runner.rb index 809b449..658b6e2 100644 --- a/test/tests/test_generate_test_runner.rb +++ b/test/tests/test_generate_test_runner.rb @@ -151,6 +151,7 @@ RUNNER_TESTS = [ 'paratest_ShouldHandleParameterizedTests\(5\)', 'paratest_ShouldHandleParameterizedTests2\(7\)', 'paratest_ShouldHandleNonParameterizedTestsWhenParameterizationValid', + 'paratest_WorksWithFunctionPointers\(isArgumentOne\)', ], :to_fail => [ 'paratest_ShouldHandleParameterizedTestsThatFail\(17\)' ], :to_ignore => [ ], @@ -168,6 +169,7 @@ RUNNER_TESTS = [ 'paratest_ShouldHandleParameterizedTests\(5\)', 'paratest_ShouldHandleParameterizedTests2\(7\)', 'paratest_ShouldHandleNonParameterizedTestsWhenParameterizationValid', + 'paratest_WorksWithFunctionPointers\(isArgumentOne\)', ], :to_fail => [ 'paratest_ShouldHandleParameterizedTestsThatFail\(17\)' ], :to_ignore => [ ], @@ -188,6 +190,7 @@ RUNNER_TESTS = [ 'paratest_ShouldHandleParameterizedTests\(5\)', 'paratest_ShouldHandleParameterizedTests2\(7\)', 'paratest_ShouldHandleNonParameterizedTestsWhenParameterizationValid', + 'paratest_WorksWithFunctionPointers\(isArgumentOne\)', ], :to_fail => [ 'paratest_ShouldHandleParameterizedTestsThatFail\(17\)' ], :to_ignore => [ ], @@ -1108,7 +1111,8 @@ RUNNER_TESTS = [ 'paratest_ShouldHandleParameterizedTests\(5\)', 'paratest_ShouldHandleParameterizedTests2\(7\)', 'paratest_ShouldHandleNonParameterizedTestsWhenParameterizationValid', - 'paratest_ShouldHandleParameterizedTestsThatFail\(17\)' + 'paratest_ShouldHandleParameterizedTestsThatFail\(17\)', + 'paratest_WorksWithFunctionPointers\(isArgumentOne\)', ], } },