-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
Test benchmarks in CI #16987
base: main
Are you sure you want to change the base?
Test benchmarks in CI #16987
Conversation
This reverts bevyengine#16833.
Something happened with the bench
|
tools/ci/src/commands/test.rs
Outdated
@@ -17,7 +17,8 @@ impl Prepare for TestCommand { | |||
vec![PreparedCommand::new::<Self>( | |||
cmd!( | |||
sh, | |||
"cargo test --workspace --lib --bins --tests {no_fail_fast}" | |||
// `--benches` runs each benchmark once, to verify that they behave correctly. |
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.
// `--benches` runs each benchmark once, to verify that they behave correctly. | |
// `--benches` runs each benchmark once in order to verify that they behave correctly. (Don't panic) |
Approving since the failure should be fixed in a separate PR |
Integer overflow panics in debug mode! Let's make it explicitly wrapping, just like how it is in release mode.
Surprisingly not! The panic was an integer overflow that was never caught in our benchmarks because they are usually compiled in release mode. I fixed it in aa2e600, though, to explicitly wrap. |
Objective
cargo test --benches
runs each benchmark once, without timing it, just to ensure nothing panics. This is actually desired because we can use it to verify benchmarks are working correctly without all the time constraints of actual benchmarks.Solution
--benches
flag to the CI test command.Testing
cargo run -p ci -- test