1
0
mirror of https://github.com/rust-lang/rustlings.git synced 2024-11-28 08:58:48 +02:00

tests1 solution

This commit is contained in:
mo8it 2024-06-27 16:29:03 +02:00
parent 6187216606
commit a4f8826301
3 changed files with 34 additions and 9 deletions

View File

@ -1,9 +1,9 @@
// Tests are important to ensure that your code does what you think it should // Tests are important to ensure that your code does what you think it should
// do. Tests can be run on this file with the following command: rustlings run // do.
// tests1
// fn is_even(n: i64) -> bool {
// This test has a problem with it -- make the test compile! Make the test pass! n % 2 == 0
// Make the test fail! }
fn main() { fn main() {
// You can optionally experiment here. // You can optionally experiment here.
@ -11,8 +11,13 @@ fn main() {
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
// TODO: Import `is_even`. You can use a wildcard to import everything in
// the outer module.
#[test] #[test]
fn you_can_assert() { fn you_can_assert() {
// TODO: Test the function `is_even` with some values.
assert!();
assert!(); assert!();
} }
} }

View File

@ -851,9 +851,6 @@ hint = """Let the compiler guide you :)"""
name = "tests1" name = "tests1"
dir = "17_tests" dir = "17_tests"
hint = """ hint = """
You don't even need to write any code to test -- you can just test values and
run that, even though you wouldn't do that in real life. :)
`assert!` is a macro that needs an argument. Depending on the value of the `assert!` is a macro that needs an argument. Depending on the value of the
argument, `assert!` will do nothing (in which case the test will pass) or argument, `assert!` will do nothing (in which case the test will pass) or
`assert!` will panic (in which case the test will fail). `assert!` will panic (in which case the test will fail).

View File

@ -1 +1,24 @@
// Solutions will be available before the stable release. Thank you for testing the beta version 🥰 // Tests are important to ensure that your code does what you think it should
// do.
fn is_even(n: i64) -> bool {
n % 2 == 0
}
fn main() {
// You can optionally experiment here.
}
#[cfg(test)]
mod tests {
// When writing unit tests, it is common to import everything from the outer
// module (`super`) using a wildcard.
use super::*;
#[test]
fn you_can_assert() {
assert!(is_even(0));
assert!(!is_even(-1));
// ^ You can assert `false` using the negation operator `!`.
}
}