Я работаю над Project Euler проблемами, и у меня каждая проблема в отдельном файле. Поскольку я пробую разные подходы к каждой проблеме, я создаю серию тестов для каждой проблемы в соответствующем файле.
Моя структура каталогов выглядит так:
euler/
Cargo.lock
Cargo.toml
README.md
src/
main.rs
p001.rs
p002.rs
...etc.
Содержимое main.rs
:
#![feature(test)]
extern crate primes;
extern crate test;
mod p001;
mod p002;
// ... etc
fn main() {}
Когда я запускаю cargo bench
, он запускает тесты для каждого отдельного файла в моем проекте:
$ cargo bench
Finished release [optimized] target(s) in 0.02 secs
Running target/release/deps/euler_rust-5be87dff38a04da2
running 11 tests
test p001::bench_fold_sum ... bench: 12,955 ns/iter (+/- 13,501)
test p001::bench_for_sum ... bench: 11,385 ns/iter (+/- 7,383)
test p002::bench_for_sum ... bench: 270 ns/iter (+/- 90)
test p002::bench_takewhile_filter_mutable_sum ... bench: 322 ns/iter (+/- 333)
test p002::bench_takewhile_filter_sum ... bench: 512 ns/iter (+/- 379)
test p002::bench_takewhile_sum ... bench: 273 ns/iter (+/- 117)
test p002::bench_while_sum ... bench: 286 ns/iter (+/- 240)
Меня интересует только запуск тестов, содержащихся в одном файле, но указание имени файла после cargo bench
дает следующее:
$ cargo bench src/p002.rs
Finished release [optimized] target(s) in 0.02 secs
Running target/release/deps/euler_rust-5be87dff38a04da2
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 11 filtered out
Как вы запускаете тесты в одном файле?