diff --git a/tests/testing.rs b/tests/testing.rs index 6f5a299a..8ab16c3d 100644 --- a/tests/testing.rs +++ b/tests/testing.rs @@ -4,19 +4,6 @@ use crate::dummy_book::DummyBook; use mdbook::MDBook; -#[test] -fn mdbook_test_chapter() { - let temp = DummyBook::new().with_passing_test(true).build().unwrap(); - let mut md = MDBook::load(temp.path()).unwrap(); - - let result = md.test_chapter(vec![], Some("Introduction")); - assert!( - result.is_ok(), - "test_chapter failed with {}", - result.err().unwrap() - ); -} - #[test] fn mdbook_test_chapter_not_found() { let temp = DummyBook::new().with_passing_test(true).build().unwrap(); diff --git a/tests/testsuite/test.rs b/tests/testsuite/test.rs index b39b183c..c5f4530a 100644 --- a/tests/testsuite/test.rs +++ b/tests/testsuite/test.rs @@ -53,3 +53,24 @@ failing! "#]]); }); } + +// Test with a specific chapter. +#[test] +fn test_individual_chapter() { + let mut test = BookTest::from_dir("test/passing_tests"); + test.run("test -c", |cmd| { + cmd.args(&["Passing 1"]) + .expect_stdout(str![[""]]) + .expect_stderr(str![[r#" +[TIMESTAMP] [INFO] (mdbook::book): Testing chapter 'Passing 1': "passing1.md" + +"#]]); + }) + // Can also be a source path. + .run("test -c passing2.md", |cmd| { + cmd.expect_stdout(str![[""]]).expect_stderr(str![[r#" +[TIMESTAMP] [INFO] (mdbook::book): Testing chapter 'Passing 2': "passing2.md" + +"#]]); + }); +}