-
Notifications
You must be signed in to change notification settings - Fork 548
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
fix(coverage): add test attributes in transition module #1649
Changes from 1 commit
8fa4a21
12a6072
6b46710
4e93b7b
e7a9f6d
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -142,16 +142,29 @@ _COMMON_ATTRS = { | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
_PY_TEST_ATTRS = { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
"_collect_cc_coverage": attr.label( | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
default = "@bazel_tools//tools/test:collect_cc_coverage", | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
executable = True, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cfg = "exec", | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
"_lcov_merger": attr.label( | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
default = configuration_field(fragment = "coverage", name = "output_generator"), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
executable = True, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cfg = "exec", | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
), | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yay magic attributes. I'm guessing you copied this from the files in python/private/common? Lets also copy the comment over so we can give what little context we have about them. Based on your analysis in the issue, I updated the text a bit.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thank you for your suggestion. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
_transition_py_binary = rule( | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
_transition_py_impl, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
attrs = _COMMON_ATTRS, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
attrs = _COMMON_ATTRS | _PY_TEST_ATTRS, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why is it needed in both, There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @aignas My understanding is that code coverage is collected from These attributes are defined in common There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ah, thank you, makes sense, just wanted to double check. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah, if a test runs a binary, then the binary needs to be instrumented so it can produce the coverage rules (which the outer test can collect and process) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cfg = _transition_python_version, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
executable = True, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
_transition_py_test = rule( | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
_transition_py_impl, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
attrs = _COMMON_ATTRS, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
attrs = _COMMON_ATTRS | _PY_TEST_ATTRS, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cfg = _transition_python_version, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
test = True, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
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.