Conversation
|
I would very much prefer to do the opposite (keep |
@kim I've made the changes, but I'm not convinced. In terms of linker time, how much time do you think this is saving? What's the extra power we get in terms of filtering? I haven't experienced trouble running subsets of tests. |
|
Well, why do you prefer the many test binaries variant?
It's about 5s on my laptop that has 16 cores. The difference is most likely more pronounced the less cores there are -- the linker does more or less the same for each test binary, but it has to do it for each test binary.
If you do but the many-files variant lists only the name of the binary. I find it quite valuable to be able to run both a group of tests (e.g. |
I can imagine this is part of what slows down the CI. Sad.
That's not the behavior I see with and to run them I would do: or My main resistance is that we then need to list all the test files again in a The link time is compelling either way, though. Sigh. |
Description of Changes
Smoketests were running twice because
tests/foo.rsautomatically gets turned into a test binary, but we also had amod.rsthat listed each file, so they were getting tested via that as well.I fixed this by removing everything from
mod.rsexcept for theclisubdirectory (because tests in subdirs are not automatically discovered).API and ABI breaking changes
None.
Expected complexity level and risk
1
Testing
cargo ci smoketestslocally, I still see the CLI tests runningcargo ci smoketestslocally, I do not see a particular CLI test name appearing more than once (e.g.cli_cannot_publish_breaking_change_without_flag)