Improve error message for `cargo test`

There is a custom compiler error, hinting that the "debug", "compare"
and "rand" feature are required for compiling and running the tests.
However, this error was not displayed when running `cargo test` due to
other compilation errors taking precedence.

This is now avoided by just not compiling the integration tests when the
necessary features are not enabled.
This commit is contained in:
Vinzent Steinberg 2021-04-10 00:48:58 -03:00
parent 5aa6033a3b
commit bbe1d0cd56
1 changed files with 8 additions and 5 deletions

View File

@ -1,8 +1,4 @@
#[cfg(any(
not(feature = "debug"),
not(feature = "compare"),
not(feature = "rand")
))]
#[cfg(not(all(feature = "debug", feature = "compare", feature = "rand")))]
compile_error!(
"Please enable the `debug`, `compare`, and `rand` features in order to compile and run the tests.
Example: `cargo test --features debug,compare,rand`"
@ -10,18 +6,25 @@ compile_error!(
#[cfg(feature = "abomonation-serialize")]
extern crate abomonation;
#[cfg(all(feature = "debug", feature = "compare", feature = "rand"))]
#[macro_use]
extern crate approx;
extern crate nalgebra as na;
extern crate num_traits as num;
#[cfg(feature = "rand")]
extern crate rand_package as rand;
#[cfg(all(feature = "debug", feature = "compare", feature = "rand"))]
mod core;
#[cfg(all(feature = "debug", feature = "compare", feature = "rand"))]
mod geometry;
#[cfg(all(feature = "debug", feature = "compare", feature = "rand"))]
mod linalg;
#[cfg(all(feature = "debug", feature = "compare", feature = "rand"))]
#[cfg(feature = "proptest-support")]
mod proptest;
//#[cfg(all(feature = "debug", feature = "compare", feature = "rand"))]
//#[cfg(feature = "sparse")]
//mod sparse;