演習 - ドキュメント テストを記述する
この演習では、関数 div
と sub
について、次のコード スニペットでドキュメント テストを作成します。
div
関数について、次のドキュメント テストを記述します。
10
を2
で除算すると5
になることをアサートします。6
を3
で除算すると2
になることをアサートします。10
を0
で除算するとパニックになることをアサートします。
sub
関数について、次のドキュメント テストを記述します。
9
から2
を減算すると7
になることをアサートします。6
から9
を減算すると-3
になることをアサートします。
/// This function divides two numbers.
///
/// # Example #1: 10 / 2 == 5
///
/// ```
/// let result = doctests_exercise::div(...); // TODO: finish this test!
/// assert_eq!(result, 2);
/// ```
///
/// # Example #2: 6 / 3 = 2
///
/// ```
/// TODO: Write this doctest!
/// ```
///
/// # Panics
///
/// The function panics if the second argument is zero.
///
/// ```rust,should_panic
/// // panics on division by zero
/// TODO: Write this doctest!
/// ```
pub fn div(a: i32, b: i32) -> i32 {
if b == 0 {
panic!("Divide-by-zero error");
}
a / b
}
/// This function subtracts two numbers.
///
/// # Example #1: 9 - 2 == 7
///
/// ```
/// TODO: Write this doctest!
/// ```
///
/// # Example #2: 6 - 9 == -3
///
/// ```
/// TODO: Write this doctest!
/// ```
pub fn sub(a: i32, b: i32) -> i32 {
a - b
}
ドキュメント テストはライブラリ クレートにのみ使用できるため、まず、コンピューターにプロジェクトを作成してください。 この目的を実現するには、ターミナルで次のコマンドを実行します。
$ cargo new --lib doctests_exercise
$ cd doctests_exercise
クレートの名前は、この演習の最初の割り当てで既に入力しているため、関数の名前の前に付ける必要があります。
この演習の完全なバージョンについては、この Rust Playground リンクを参照してください。