[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJ-ks9k=uxxumgEU84-54u8OxxJVBsUprGk7Ht31ndoumHB95w@mail.gmail.com>
Date: Sun, 4 May 2025 13:30:23 -0400
From: Tamir Duberstein <tamird@...il.com>
To: Miguel Ojeda <ojeda@...nel.org>
Cc: Brendan Higgins <brendan.higgins@...ux.dev>, David Gow <davidgow@...gle.com>,
Alex Gaynor <alex.gaynor@...il.com>, Rae Moar <rmoar@...gle.com>,
linux-kselftest@...r.kernel.org, kunit-dev@...glegroups.com,
Boqun Feng <boqun.feng@...il.com>, Gary Guo <gary@...yguo.net>,
Björn Roy Baron <bjorn3_gh@...tonmail.com>,
Benno Lossin <benno.lossin@...ton.me>, Andreas Hindborg <a.hindborg@...nel.org>,
Alice Ryhl <aliceryhl@...gle.com>, Trevor Gross <tmgross@...ch.edu>,
Danilo Krummrich <dakr@...nel.org>, rust-for-linux@...r.kernel.org,
linux-kernel@...r.kernel.org, patches@...ts.linux.dev
Subject: Re: [PATCH 4/7] rust: str: convert `rusttest` tests into KUnit
On Fri, May 2, 2025 at 5:53 PM Miguel Ojeda <ojeda@...nel.org> wrote:
>
> In general, we should aim to test as much as possible within the actual
> kernel, and not in the build host.
Is that true? The build host is often easier to work with. There's a
number of host tests on the C side that exist precisely for this
reason.
> Thus convert these `rusttest` tests into KUnit tests.
>
> Signed-off-by: Miguel Ojeda <ojeda@...nel.org>
> ---
> rust/kernel/str.rs | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/rust/kernel/str.rs b/rust/kernel/str.rs
> index 878111cb77bc..cf2caa2db168 100644
> --- a/rust/kernel/str.rs
> +++ b/rust/kernel/str.rs
> @@ -6,7 +6,7 @@
> 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 @@ fn test_cstr_to_str() {
> }
>
> #[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]
> --
> 2.49.0
>
>
Powered by blists - more mailing lists