Fix Issue 112009

modify fuction clond() -> cloned()

optimize the code

Handle the problem that the pathset is empty and modify the judgment of the builder::tests::test_exclude_kind

Delete unnecessary judegment conditions

skip test for library/std duo to OOM in benches as library/alloc

Add FIXME for WASM32
This commit is contained in:
LuuuX 2023-08-22 15:15:00 +08:00
parent 32aa40538e
commit 45abd8caf2
3 changed files with 8 additions and 5 deletions

View file

@ -302,8 +302,10 @@ impl StepDescription {
}
}
fn maybe_run(&self, builder: &Builder<'_>, pathsets: Vec<PathSet>) {
if pathsets.iter().any(|set| self.is_excluded(builder, set)) {
fn maybe_run(&self, builder: &Builder<'_>, mut pathsets: Vec<PathSet>) {
pathsets.retain(|set| !self.is_excluded(builder, set));
if pathsets.is_empty() {
return;
}

View file

@ -136,9 +136,9 @@ fn test_exclude_kind() {
let mut config = configure("test", &["A"], &["A"]);
// Ensure our test is valid, and `test::Rustc` would be run without the exclude.
assert!(run_build(&[], config.clone()).contains::<test::CrateLibrustc>());
// Ensure tests for rustc are skipped.
// Ensure tests for rustc are not skipped.
config.skip = vec![path.clone()];
assert!(!run_build(&[], config.clone()).contains::<test::CrateLibrustc>());
assert!(run_build(&[], config.clone()).contains::<test::CrateLibrustc>());
// Ensure builds for rustc are not skipped.
assert!(run_build(&[], config).contains::<compile::Rustc>());
}

View file

@ -58,5 +58,6 @@ ENV NO_CHANGE_USER=1
RUN chown 10719 -R /emsdk-portable/
# Exclude library/alloc due to OOM in benches.
# FIXME: Fix std tests
ENV SCRIPT python3 ../x.py test --stage 2 --host='' --target $TARGETS \
--skip library/alloc
--skip library/alloc --skip library/std