#![no_std]
#![feature(try_blocks)]
#![cfg_attr(test, no_main)]
#![cfg_attr(test, feature(custom_test_frameworks))]
#![cfg_attr(test, test_runner(runner))]
#![cfg_attr(test, reexport_test_harness_main = "test_harness")]
#[cfg(test)]
extern crate self as ktest;
mod args;
mod log;
pub mod memory;
pub mod macros;
pub mod test;
mod qemu;
pub use ktest_macros::ktest;
pub use macros::klib::{KlibConfig, KlibConfigBuilder};
pub use test::{runner::runner, Test, split_module_path, split_module_path_len};
const MAX_STRING_LENGTH: usize = 1024;
pub fn init_harness(test_group: &str) {
args::set_test_group(test_group);
}
pub fn panic(info: &core::panic::PanicInfo) -> ! {
use crate::test::runner::TestRunner;
use crate::test::runner::TEST_RUNNER;
TEST_RUNNER.get().unwrap().handle_panic(info)
}