summaryrefslogtreecommitdiff
path: root/test/selftest.cc
diff options
context:
space:
mode:
authorRichard Qin <richard.qin.x@gmail.com>2026-07-10 11:31:46 +0800
committerRichard Qin <richard.qin.x@gmail.com>2026-07-10 11:31:46 +0800
commite90b72ec3082588b296956730bd2930cf8d5d671 (patch)
tree36ff6916af9b4176ea5a9662219d11e721f0b691 /test/selftest.cc
parent1767d390fbf3d0c65389de46caf0b6d43ef3b6ad (diff)
downloadlume-e90b72ec3082588b296956730bd2930cf8d5d671.tar.gz
lume-e90b72ec3082588b296956730bd2930cf8d5d671.tar.xz
refactor: promote new architecture to repository root
Archive the deprecated implementation under lume-legacy, make the new kernel the default root-level build, and update repository entry points without changing kernel behavior.
Diffstat (limited to 'test/selftest.cc')
-rw-r--r--test/selftest.cc83
1 files changed, 83 insertions, 0 deletions
diff --git a/test/selftest.cc b/test/selftest.cc
new file mode 100644
index 0000000..e1bb2b4
--- /dev/null
+++ b/test/selftest.cc
@@ -0,0 +1,83 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/* Copyright (C) 2026 Richard Qin */
+
+/*
+ * Boot Self-Test Runner
+ *
+ * Entry point that invokes all registered self-test suites.
+ * Called from kernel_main() after all subsystem initialization.
+ */
+
+#include <lume/selftest.h>
+
+/* Individual test suite entry points */
+void selftest_pmm();
+void selftest_slab();
+void selftest_spinlock();
+void selftest_mutex();
+void selftest_driver_model();
+void selftest_rbtree();
+void selftest_vmm();
+void selftest_fdt();
+void selftest_vma();
+void selftest_atomic();
+void selftest_trap();
+void selftest_sched();
+void selftest_klog();
+void selftest_random();
+void selftest_waitqueue();
+void selftest_uaccess();
+void selftest_sys_mm();
+void selftest_dcache();
+void selftest_namei();
+void selftest_vfs_io();
+void selftest_exec();
+void selftest_devfs();
+void selftest_pipe();
+void selftest_fcntl();
+void selftest_sys_process();
+void selftest_signal();
+void selftest_pid();
+void selftest_sys_fs_extra();
+void selftest_page_cache();
+
+void selftest_run_all()
+{
+ kprintf("\n========================================\n");
+ kprintf(" Boot Self-Test Suite\n");
+ kprintf("========================================\n");
+
+ selftest_spinlock();
+ selftest_mutex();
+ selftest_driver_model();
+ selftest_pmm();
+ selftest_slab();
+ selftest_rbtree();
+ selftest_vmm();
+ selftest_vma();
+ selftest_atomic();
+ selftest_fdt();
+ selftest_trap();
+ selftest_sched();
+ selftest_klog();
+ selftest_random();
+ selftest_waitqueue();
+ selftest_uaccess();
+ selftest_sys_mm();
+ selftest_dcache();
+ selftest_namei();
+ selftest_vfs_io();
+ selftest_devfs();
+ selftest_pipe();
+ selftest_fcntl();
+ selftest_sys_process();
+ selftest_signal();
+ selftest_pid();
+ selftest_sys_fs_extra();
+ selftest_page_cache();
+ selftest_exec();
+
+ kprintf("========================================\n");
+ kprintf(" All self-tests PASSED\n");
+ kprintf("========================================\n\n");
+}