Skip to content

Commit ce9fa6e

Browse files
author
marisa
committed
feat(hint): Add test for hint
1 parent 795b6e3 commit ce9fa6e

File tree

3 files changed

+21
-9
lines changed

3 files changed

+21
-9
lines changed

src/main.rs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,7 @@ fn main() {
6565
std::process::exit(1);
6666
});
6767

68-
let matching_exercise = |e: &&Exercise| {
69-
name == e.name
70-
};
68+
let matching_exercise = |e: &&Exercise| name == e.name;
7169

7270
let exercise = exercises.iter().find(matching_exercise).unwrap_or_else(|| {
7371
println!("No exercise found for your given name!");
@@ -83,10 +81,13 @@ fn main() {
8381
std::process::exit(1);
8482
});
8583

86-
let exercise = exercises.iter().find(|e| name == e.name).unwrap_or_else(|| {
87-
println!("No exercise found for your given name!");
88-
std::process::exit(1)
89-
});
84+
let exercise = exercises
85+
.iter()
86+
.find(|e| name == e.name)
87+
.unwrap_or_else(|| {
88+
println!("No exercise found for your given name!");
89+
std::process::exit(1)
90+
});
9091

9192
println!("{}", exercise.hint);
9293
}

tests/fixture/failure/info.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
name = "compFailure"
33
path = "compFailure.rs"
44
mode = "compile"
5-
hint = """"""
5+
hint = ""
66

77
[[exercises]]
88
name = "testFailure"
99
path = "testFailure.rs"
1010
mode = "test"
11-
hint = """"""
11+
hint = "Hello!"

tests/integration_tests.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,3 +105,14 @@ fn run_single_test_no_exercise() {
105105
.assert()
106106
.code(1);
107107
}
108+
109+
#[test]
110+
fn get_hint_for_single_test() {
111+
Command::cargo_bin("rustlings")
112+
.unwrap()
113+
.args(&["h", "testFailure"])
114+
.current_dir("tests/fixture/failure")
115+
.assert()
116+
.code(0)
117+
.stdout("Hello!\n");
118+
}

0 commit comments

Comments
 (0)