実際のところ
プロジェクト生成
公式ご推奨のコマンドを実行してみます
$ cargo new adder --lib
やると、こんな構造になります
libはlibraryクレートという
adder/ ├── Cargo.toml └── src/ └── lib.rs
スクリプト
自動生成されたスクリプトは、こんな感じ
pub fn add(left: u64, right: u64) -> u64 { left + right } #[cfg(test)] mod tests { use super::*; #[test] fn it_works() { let result = add(2, 2); assert_eq!(result, 4); } }
テスト実行
$ cargo test Compiling adder v0.1.0 (/home/ubuntu/rustproject/adder) Finished `test` profile [unoptimized + debuginfo] target(s) in 0.41s Running unittests src/lib.rs (target/debug/deps/adder-8b5411e7d1a55e86) running 1 test test tests::it_works ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests adder running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s||< * 参考もと