diff options
author | Miguel Ojeda <ojeda@kernel.org> | 2025-05-02 23:51:29 +0200 |
---|---|---|
committer | Miguel Ojeda <ojeda@kernel.org> | 2025-05-27 20:09:59 +0200 |
commit | 028df914e5466a02326829427bb8e26a31a05545 (patch) | |
tree | 502537d851629eb09fe6648fbf7d1966188ab7a4 | |
parent | 897d1df6532f05814acd364af9055cd6628fd1b3 (diff) |
rust: str: convert `rusttest` tests into KUnit
In general, we should aim to test as much as possible within the actual
kernel, and not in the build host.
Thus convert these `rusttest` tests into KUnit tests.
Reviewed-by: David Gow <davidgow@google.com>
Acked-by: Danilo Krummrich <dakr@kernel.org>
Link: https://lore.kernel.org/r/20250502215133.1923676-5-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
-rw-r--r-- | rust/kernel/str.rs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/rust/kernel/str.rs b/rust/kernel/str.rs index c554b243ebcb..9b5228025e2c 100644 --- a/rust/kernel/str.rs +++ b/rust/kernel/str.rs @@ -6,7 +6,7 @@ use crate::alloc::{flags::*, AllocError, KVec}; use core::fmt::{self, Write}; use core::ops::{self, Deref, DerefMut, Index}; -use crate::error::{code::*, Error}; +use crate::prelude::*; /// Byte string without UTF-8 validity guarantee. #[repr(transparent)] @@ -572,8 +572,7 @@ macro_rules! c_str { }}; } -#[cfg(test)] -#[expect(clippy::items_after_test_module)] +#[kunit_tests(rust_kernel_str)] mod tests { use super::*; @@ -622,11 +621,10 @@ mod tests { } #[test] - #[should_panic] - fn test_cstr_to_str_panic() { + fn test_cstr_to_str_invalid_utf8() { let bad_bytes = b"\xc3\x28\0"; let checked_cstr = CStr::from_bytes_with_nul(bad_bytes).unwrap(); - checked_cstr.to_str().unwrap(); + assert!(checked_cstr.to_str().is_err()); } #[test] |