Залежності для розробки
Іноді виникає потреба мати залежності лише для тестів (або прикладів,
або бенчмарків). Такі залежності додаються до Cargo.toml у розділі
[dev-dependencies]. Ці залежності не поширюються на інші пакети,
які залежать від цього пакета.
Одним із таких прикладів є pretty_assertions, який розширює стандартні макроси assert_eq! і assert_ne!, щоб надавати кольоровий diff.
Файл Cargo.toml:
# standard crate data is left out
[dev-dependencies]
pretty_assertions = "1"
Файл src/lib.rs:
pub fn add(a: i32, b: i32) -> i32 {
a + b
}
#[cfg(test)]
mod tests {
use super::*;
use pretty_assertions::assert_eq; // crate for test-only use. Cannot be used in non-test code.
#[test]
fn test_add() {
assert_eq!(add(2, 3), 5);
}
}
Див. також
Cargo docs on specifying dependencies.