day 45 @その他 コマンドラインの引数に関するプラクティス。

フラグはオプションのタイプであり、ブール型のオプションであり、デフォルトでは常にfalseです(例:--verbose、-quiet、-all、-longなど)。

オプションは、関数にhowを実行するよう指示します(例:-a、-l、-verbose、-output、-name、-cなど)。引数が関数に指示するwhatに作用する/から作用する(例*、file1、ホスト名、データベース)。

linux — フラグ、オプション、引数の違いは何ですか?

day 45 @rust テスト3

ユニットテストの作成
testsというモジュールを作成する。
#[cfg(test)]属性を加える。
テスト関数を追加する。

#[cfg(test)]
mod tests {
    #[test]
    fn hogehoge_test() {
        assert_eq!(1, 2)
    }
}

・rustではprivateな関数のテストも可能。

・統合テストの作成
srcと同じ階層にtestsというディレクトリを作成。
testsないにテストを作成。
特定のファイルのテストのみしたい時は

    • test hogehoge_test

とする。

統合テストで実行されるのはtests直下のみなので、setup teardownなどが必要な時には
tests/common/mod.rs
などを作ってそこに追加する。