Allow test classes with constructor parameters #982
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR removes a filter from the test discovery that ignores classes that have parameters in their constructor. I think this is problematic as it is perfectly valid for tests to have constructor parameters depending on the test framework, and so this should be a decision made by the testing framework rather than the build tool.
Here's an example where I encountered this issue recently: disneystreaming/weaver-test#113. After running these tests again with the changes made in this PR the example tests shown in that issue now pass.
I've attempted to verify that these changes are compatible with other test frameworks. With some fairly basic examples uTest and Scalatest both seem to continue to work as expected. I'd be happy to verify the changes against other test frameworks if you have any further suggestions.
Thanks