-
Notifications
You must be signed in to change notification settings - Fork 117
[feat] Enable multiple inheritance of test variables #3113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Hello @vkarak, Thank you for updating! Cheers! There are no PEP8 issues in this Pull Request!Do see the ReFrame Coding Style Guide Comment last updated at 2024-02-19 20:17:18 UTC |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## develop #3113 +/- ##
===========================================
+ Coverage 86.64% 86.66% +0.02%
===========================================
Files 61 61
Lines 12052 12066 +14
===========================================
+ Hits 10442 10457 +15
+ Misses 1610 1609 -1 ☔ View full report in Codecov by Sentry. |
Co-authored-by: Theofilos Manitaras <manitaras@cscs.ch>
victorusu
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
Currently, multiple inheritance of test or mixin variables is prohibited leads to a test load error. This is restrictive, especially in case of mixins, which may be inherited multiple times in a complex setup. For example, the following would cause an error when reframe is processing the
Zclass:This PR introduces a new variable argument,
merge_func, that defines how the default values of the parent variables can be combined in case of multiple inheritance. Sincemerge_func=Noneby default, the default behaviour of variables does not change. It just that we now offer the extra flexibility to users to define the variable behaviour in case of multiple inheritance.In the example above, if we define
xas follows:its value in
Zclass will be[10, 4].Todos