Iが生成されたファイルを配置することができる経路を画定する、次のコードを持っている:Rustにはどこにテストユーティリティ関数を入れるべきですか?
fn gen_test_dir() -> tempdir::TempDir {
tempdir::TempDir::new_in(Path::new("/tmp"), "filesyncer-tests").unwrap()
}
この機能は、tests/lib.rs
で定義されたそのファイルに試験に使用し、私はまた、ユニットテストで使用したいと考えていますsrc/lib.rs
にあります。
これは、ユーティリティ機能を非テストバイナリにコンパイルせずに、コードを複製せずに達成できますか?
tests/lib.rs'? –
@DanielFath私はこれを試して、リリースバイナリへのコンパイルを避けるために '#[test]'と注釈を付けました: "テストとして使用する関数は、署名fn()を持たなければなりません - >()" – PureW
' #cfg(not(test)) 'を実行して、コードを削除します。 –