summaryrefslogtreecommitdiff
path: root/kernel/tests
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/tests')
-rw-r--r--kernel/tests/boot.rs4
-rw-r--r--kernel/tests/int3.rs8
-rw-r--r--kernel/tests/stack_overflow.rs4
3 files changed, 13 insertions, 3 deletions
diff --git a/kernel/tests/boot.rs b/kernel/tests/boot.rs
index 3a65ff6..c6c0de0 100644
--- a/kernel/tests/boot.rs
+++ b/kernel/tests/boot.rs
@@ -4,6 +4,7 @@
#![feature(panic_info_message)]
#![test_runner(kernel::testing::serial_test_runner)]
#![reexport_test_harness_main = "test_main"]
+#![allow(unreachable_code)]
#![no_std]
use kernel;
@@ -14,6 +15,7 @@ extern "C" fn _start() -> ! {
kernel::init();
test_main();
+ #[allow(clippy::empty_loop)]
loop {}
}
@@ -25,6 +27,7 @@ fn boot() {
#[test_case]
fn poweroff() {
qemu::exit_qemu(qemu::QemuExitCode::Success);
+ loop {}
panic!("Qemu did not exit");
}
@@ -33,5 +36,6 @@ fn poweroff() {
#[no_mangle]
extern "C" fn panic_handler(info: &core::panic::PanicInfo) -> ! {
kernel::testing::serial_panic(info);
+ #[allow(clippy::empty_loop)]
loop {}
}
diff --git a/kernel/tests/int3.rs b/kernel/tests/int3.rs
index faa5b3d..ac0e5f0 100644
--- a/kernel/tests/int3.rs
+++ b/kernel/tests/int3.rs
@@ -1,12 +1,15 @@
#![no_main]
#![feature(abi_x86_interrupt)]
#![feature(panic_info_message)]
+#![allow(unreachable_code)]
+#![feature(custom_test_frameworks)]
+#![test_runner(kernel::testing::serial_test_runner)]
#![no_std]
use kernel;
use kernel::interrupts;
use kernel::interrupts::exception_handlers;
-use kernel::io::qemu;
+use kernel::qemu;
#[no_mangle]
extern "C" fn _start() -> ! {
@@ -15,6 +18,7 @@ extern "C" fn _start() -> ! {
exception_handlers::expect_fault(interrupts::InterruptType::Breakpoint);
}
x86_64::instructions::interrupts::int3();
+
panic!("BREAKPOINT not caught");
loop {}
@@ -24,6 +28,6 @@ extern "C" fn _start() -> ! {
#[panic_handler]
#[no_mangle]
extern "C" fn panic_handler(info: &core::panic::PanicInfo) -> ! {
- kernel::testing::serial_should_panic(info);
+ kernel::testing::serial_panic(info);
loop {}
}
diff --git a/kernel/tests/stack_overflow.rs b/kernel/tests/stack_overflow.rs
index fc93376..9c4db19 100644
--- a/kernel/tests/stack_overflow.rs
+++ b/kernel/tests/stack_overflow.rs
@@ -2,12 +2,13 @@
#![feature(abi_x86_interrupt)]
#![feature(panic_info_message)]
#![no_std]
+#![allow(unreachable_code)]
use core::fmt::Write;
use kernel;
use kernel::interrupts;
use kernel::interrupts::exception_handlers;
-use kernel::io::qemu;
+use kernel::qemu;
#[no_mangle]
extern "C" fn _start() -> ! {
@@ -15,6 +16,7 @@ extern "C" fn _start() -> ! {
unsafe {
exception_handlers::expect_fault(interrupts::InterruptType::PageFault);
}
+ qemu::exit_qemu(qemu::QemuExitCode::Success);
_loop(0);
panic!("PAGE_FAULT not caught");
loop {}