pub(crate) use super::*;
#[test]
fn test_o1_example_listing() {
let result = o1_example_listing();
assert!(result.passed);
assert_eq!(result.id, "O1");
}
#[test]
fn test_o2_whisper_transcribe() {
let result = o2_whisper_transcribe_example();
assert!(result.passed);
}
#[test]
fn test_o3_logic_family_tree() {
let result = o3_logic_family_tree_example();
assert!(result.passed);
}
#[test]
fn test_o4_qwen_chat() {
let result = o4_qwen_chat_example();
assert!(result.passed);
}
#[test]
fn test_o5_examples_compile() {
let result = o5_examples_compile();
assert!(result.passed);
}
#[test]
fn test_o6_public_api() {
let result = o6_public_api_only();
assert!(result.passed);
}
#[test]
fn test_o7_mdbook() {
let result = o7_mdbook_builds();
assert!(result.passed);
}
#[test]
fn test_o8_links() {
let result = o8_book_links_valid();
assert!(result.passed);
}
#[test]
fn test_o9_code_blocks() {
let result = o9_code_blocks_tested();
assert!(result.passed);
}
#[test]
fn test_o10_readme() {
let result = o10_readme_quickstart();
assert!(result.passed);
}
#[test]
fn test_o11_cli_help() {
let result = o11_cli_help_consistent();
assert!(result.passed);
}
#[test]
fn test_o12_manpages() {
let result = o12_manpages_generation();
assert!(result.passed);
}
#[test]
fn test_o13_changelog() {
let result = o13_changelog_updated();
assert!(result.passed);
}
#[test]
fn test_o14_contributing() {
let result = o14_contributing_guide();
assert!(result.passed);
}
#[test]
fn test_o15_license() {
let result = o15_license_headers();
assert!(result.passed);
}
#[test]
fn test_o16_error_handling() {
let result = o16_examples_error_handling();
assert!(result.passed);
}
#[test]
fn test_o17_progress() {
let result = o17_progress_bars();
assert!(result.passed);
}
#[test]
fn test_o18_wasm_docs() {
let result = o18_wasm_documentation();
assert!(result.passed);
}
#[test]
fn test_o19_tensorlogic_docs() {
let result = o19_tensorlogic_documentation();
assert!(result.passed);
}
#[test]
fn test_o20_audio_docs() {
let result = o20_audio_documentation();
assert!(result.passed);
}
#[test]
fn test_run_all_docs_tests() {
let config = DocsConfig::default();
let results = run_all_docs_tests(&config);
assert_eq!(results.len(), 20);
assert!(results.iter().all(|r| r.passed));
}
#[test]
fn test_docs_config_default() {
let config = DocsConfig::default();
assert!(config.check_examples);
assert!(config.check_book);
}
#[test]
fn test_docs_result_creation() {
let pass = DocsResult::pass("O1", "Test", "Details");
assert!(pass.passed);
let fail = DocsResult::fail("O2", "Test", "Error");
assert!(!fail.passed);
}
#[test]
fn test_docs_result_pass_all_fields() {
let result = DocsResult::pass("ID", "Name", "Details");
assert_eq!(result.id, "ID");
assert_eq!(result.name, "Name");
assert_eq!(result.details, "Details");
assert!(result.passed);
}
#[test]
fn test_docs_result_fail_all_fields() {
let result = DocsResult::fail("FAIL-ID", "Fail Name", "Fail Details");
assert_eq!(result.id, "FAIL-ID");
assert_eq!(result.name, "Fail Name");
assert_eq!(result.details, "Fail Details");
assert!(!result.passed);
}
#[test]
fn test_docs_result_debug() {
let result = DocsResult::pass("O1", "test", "details");
let debug = format!("{:?}", result);
assert!(debug.contains("DocsResult"));
assert!(debug.contains("O1"));
}
#[test]
fn test_docs_result_clone() {
let original = DocsResult::pass("O1", "test", "details");
let cloned = original.clone();
assert_eq!(original.id, cloned.id);
assert_eq!(original.name, cloned.name);
assert_eq!(original.passed, cloned.passed);
assert_eq!(original.details, cloned.details);
}
#[test]
fn test_docs_config_debug() {
let config = DocsConfig::default();
let debug = format!("{:?}", config);
assert!(debug.contains("DocsConfig"));
}
#[test]
fn test_docs_config_clone() {
let original = DocsConfig::default();
let cloned = original.clone();
assert_eq!(original.project_root, cloned.project_root);
assert_eq!(original.check_examples, cloned.check_examples);
assert_eq!(original.check_book, cloned.check_book);
}
#[test]
fn test_docs_config_custom_values() {
let config = DocsConfig {
project_root: "/custom/path".to_string(),
check_examples: false,
check_book: false,
};
assert_eq!(config.project_root, "/custom/path");
assert!(!config.check_examples);
assert!(!config.check_book);
}
#[test]
fn test_o1_returns_o1_id() {
let result = o1_example_listing();
assert_eq!(result.id, "O1");
}
#[test]
fn test_o2_returns_o2_id() {
let result = o2_whisper_transcribe_example();
assert_eq!(result.id, "O2");
}
#[test]
fn test_o3_returns_o3_id() {
let result = o3_logic_family_tree_example();
assert_eq!(result.id, "O3");
}
#[test]
fn test_o4_returns_o4_id() {
let result = o4_qwen_chat_example();
assert_eq!(result.id, "O4");
}
#[test]
fn test_o5_returns_o5_id() {
let result = o5_examples_compile();
assert_eq!(result.id, "O5");
}
#[test]
fn test_o6_returns_o6_id() {
let result = o6_public_api_only();
assert_eq!(result.id, "O6");
}
#[test]
fn test_o7_returns_o7_id() {
let result = o7_mdbook_builds();
assert_eq!(result.id, "O7");
}
#[test]
fn test_example_file_exists_helper() {
let result = o2_whisper_transcribe_example();
assert!(!result.id.is_empty());
}
#[test]
fn test_all_results_have_ids() {
let config = DocsConfig::default();
let results = run_all_docs_tests(&config);
for (i, result) in results.iter().enumerate() {
let expected_id = format!("O{}", i + 1);
assert_eq!(result.id, expected_id, "Result {} has wrong ID", i);
}
}
#[test]
fn test_all_results_have_names() {
let config = DocsConfig::default();
let results = run_all_docs_tests(&config);
for result in &results {
assert!(
!result.name.is_empty(),
"Result {} has empty name",
result.id
);
assert!(
!result.details.is_empty(),
"Result {} has empty details",
result.id
);
}
}
#[test]
fn test_o8_to_o20_all_pass() {
assert!(o8_book_links_valid().passed);
assert!(o9_code_blocks_tested().passed);
assert!(o11_cli_help_consistent().passed);
assert!(o12_manpages_generation().passed);
assert!(o16_examples_error_handling().passed);
assert!(o17_progress_bars().passed);
assert!(o18_wasm_documentation().passed);
assert!(o19_tensorlogic_documentation().passed);
assert!(o20_audio_documentation().passed);
}
#[test]
fn test_static_checks_return_correct_ids() {
assert_eq!(o8_book_links_valid().id, "O8");
assert_eq!(o9_code_blocks_tested().id, "O9");
assert_eq!(o10_readme_quickstart().id, "O10");
assert_eq!(o11_cli_help_consistent().id, "O11");
assert_eq!(o12_manpages_generation().id, "O12");
assert_eq!(o13_changelog_updated().id, "O13");
assert_eq!(o14_contributing_guide().id, "O14");
assert_eq!(o15_license_headers().id, "O15");
assert_eq!(o16_examples_error_handling().id, "O16");
assert_eq!(o17_progress_bars().id, "O17");
assert_eq!(o18_wasm_documentation().id, "O18");
assert_eq!(o19_tensorlogic_documentation().id, "O19");
assert_eq!(o20_audio_documentation().id, "O20");
}
#[test]
fn test_run_all_docs_returns_20_results() {
let config = DocsConfig::default();
let results = run_all_docs_tests(&config);
assert_eq!(results.len(), 20);
}
#[test]
fn test_docs_config_default_project_root() {
let config = DocsConfig::default();
assert_eq!(config.project_root, ".");
}
#[test]
fn test_example_file_exists_nonexistent() {
let exists = example_file_exists("nonexistent_example_xyz_123.rs");
let _ = exists;
}
#[test]
fn test_o5_examples_compile_always_passes() {
let result = o5_examples_compile();
assert!(result.passed);
assert_eq!(result.name, "Examples compile");
}
#[test]
fn test_o6_public_api_only_always_passes() {
let result = o6_public_api_only();
assert!(result.passed);
assert_eq!(result.name, "Public API only");
}
#[test]
fn test_o16_o17_static_checks() {
let r16 = o16_examples_error_handling();
let r17 = o17_progress_bars();
assert!(r16.passed);
assert!(r17.passed);
assert_eq!(r16.name, "Error handling");
assert_eq!(r17.name, "Progress bars");
}
#[test]
fn test_o18_o19_o20_static_checks() {
let r18 = o18_wasm_documentation();
let r19 = o19_tensorlogic_documentation();
let r20 = o20_audio_documentation();
assert!(r18.passed);
assert!(r19.passed);
assert!(r20.passed);
assert_eq!(r18.name, "WASM documentation");
assert_eq!(r19.name, "TensorLogic docs");
assert_eq!(r20.name, "Audio docs");
}
#[test]
fn test_docs_result_fail_fields_complete() {
let result = DocsResult::fail("FAIL-ID", "Failure Test", "Failure Details");
assert!(!result.passed);
assert_eq!(result.id, "FAIL-ID");
assert_eq!(result.name, "Failure Test");
assert_eq!(result.details, "Failure Details");
}
#[test]
fn test_run_all_docs_with_custom_config() {
let config = DocsConfig {
project_root: "/some/custom/path".to_string(),
check_examples: false,
check_book: false,
};
let results = run_all_docs_tests(&config);
assert_eq!(results.len(), 20);
}
#[test]
fn test_o1_example_listing_details() {
let result = o1_example_listing();
assert!(!result.name.is_empty());
assert!(!result.details.is_empty());
}
#[test]
fn test_o2_o3_o4_example_details() {
let r2 = o2_whisper_transcribe_example();
let r3 = o3_logic_family_tree_example();
let r4 = o4_qwen_chat_example();
assert_eq!(r2.name, "whisper_transcribe.rs");
assert_eq!(r3.name, "logic_family_tree.rs");
assert_eq!(r4.name, "qwen_chat.rs");
}
#[test]
fn test_o7_mdbook_details() {
let result = o7_mdbook_builds();
assert_eq!(result.name, "mdBook builds");
assert!(!result.details.is_empty());
}
#[test]
fn test_o10_readme_details() {
let result = o10_readme_quickstart();
assert_eq!(result.name, "README quickstart");
}
#[test]
fn test_o13_o14_conditionals() {
let r13 = o13_changelog_updated();
let r14 = o14_contributing_guide();
assert!(r13.passed);
assert!(r14.passed);
}
#[test]
fn test_o15_license_headers_details() {
let result = o15_license_headers();
assert_eq!(result.name, "License headers");
assert!(!result.details.is_empty());
}
#[test]
fn test_docs_result_debug_format() {
let result = DocsResult::pass("TEST", "Test Name", "Test Details");
let debug = format!("{result:?}");
assert!(debug.contains("DocsResult"));
assert!(debug.contains("TEST"));
assert!(debug.contains("true"));
}
#[test]
fn test_docs_config_debug_format() {
let config = DocsConfig {
project_root: "/test".to_string(),
check_examples: true,
check_book: false,
};
let debug = format!("{config:?}");
assert!(debug.contains("DocsConfig"));
assert!(debug.contains("/test"));
}