Skip to content

Commit

Permalink
Run tests (including doc tests) in cargo run -p ci command (#3849)
Browse files Browse the repository at this point in the history
# Objective

- Using the `cargo run -p ci` command locally is unreliable, as it does not run tests.
- This is particularly unreliable for doc tests, as they are not run as part of `cargo test`.

## Solution

- add more steps to the appropriate Rust file.

## Known Problems

This duplicates work done to run tests when run on Github. @mockersf, suggestions on if we care / how we can mitigate it?
  • Loading branch information
alice-i-cecile committed Feb 3, 2022
1 parent 19bd6b9 commit c44f8b2
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ jobs:
run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev libwayland-dev libxkbcommon-dev
- name: CI job
# See tools/ci/src/main.rs for the commands this runs
run: cargo run -p ci
run: cargo run -p ci -- nonlocal

check-benches:
runs-on: ubuntu-latest
Expand Down
16 changes: 16 additions & 0 deletions tools/ci/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,20 @@ fn main() {
.run()
.expect("Compiler errors of the ECS compile fail tests seem to be different than expected! Check locally and compare rust versions.");
}

// These tests are already run on the CI
// Using a double-negative here allows end-users to have a nicer experience
// as we can pass in the extra argument to the CI script
let args: Vec<String> = std::env::args().collect();
if args.get(1) != Some(&"nonlocal".to_string()) {
// Run tests
cmd!("cargo test --workspace")
.run()
.expect("Please fix failing tests in output above.");

// Run doc tests: these are ignored by `cargo test`
cmd!("cargo test --doc --workspace")
.run()
.expect("Please fix failing doc-tests in output above.");
}
}

0 comments on commit c44f8b2

Please sign in to comment.