В нашей методологии тестирования документация тестирования является первоклассным объектом при выводе документации.В частности, он определяет спецификацию, которая тестируется каждым поведенческим тестом.
Выполнение cargo doc
в проекте с соответствующим образом документированными тестами не дает большого количества документации, полученной из тестовых строк документа, и я могуЯ не вижу очевидного способа сделать так, чтобы тестовые строки документа включались в вывод.
Пример модуля будет следующим:
/// This function does some important stuff
pub fn working_fn() -> bool {
true
}
#[cfg(test)]
mod tests {
//! This is some important set of tests
//!
use super::*;
/// The function should work
#[test]
fn it_works() {
assert!(working_fn());
}
}
Я получаю вывод документации для общественности working_fn
, но ничего для модуля tests
.Я понимаю, что дополнительным осложнением является то, что тесты являются частными, и в идеале я мог бы задокументировать частные тесты, не документируя и другие частные объекты.