1 // SPDX-License-Identifier: GPL-2.0 OR MIT 2 /* 3 * ./tools/testing/kunit/kunit.py run is_signed_type [--raw_output] 4 */ 5 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt 6 7 #include <kunit/test.h> 8 #include <linux/compiler.h> 9 10 enum unsigned_enum { 11 constant_a = 3, 12 }; 13 14 enum signed_enum { 15 constant_b = -1, 16 constant_c = 2, 17 }; 18 19 static void is_signed_type_test(struct kunit *test) 20 { 21 KUNIT_EXPECT_EQ(test, is_signed_type(bool), false); 22 KUNIT_EXPECT_EQ(test, is_signed_type(signed char), true); 23 KUNIT_EXPECT_EQ(test, is_signed_type(unsigned char), false); 24 KUNIT_EXPECT_EQ(test, is_signed_type(char), false); 25 KUNIT_EXPECT_EQ(test, is_signed_type(int), true); 26 KUNIT_EXPECT_EQ(test, is_signed_type(unsigned int), false); 27 KUNIT_EXPECT_EQ(test, is_signed_type(long), true); 28 KUNIT_EXPECT_EQ(test, is_signed_type(unsigned long), false); 29 KUNIT_EXPECT_EQ(test, is_signed_type(long long), true); 30 KUNIT_EXPECT_EQ(test, is_signed_type(unsigned long long), false); 31 KUNIT_EXPECT_EQ(test, is_signed_type(enum unsigned_enum), false); 32 KUNIT_EXPECT_EQ(test, is_signed_type(enum signed_enum), true); 33 KUNIT_EXPECT_EQ(test, is_signed_type(void *), false); 34 KUNIT_EXPECT_EQ(test, is_signed_type(const char *), false); 35 } 36 37 static struct kunit_case is_signed_type_test_cases[] = { 38 KUNIT_CASE(is_signed_type_test), 39 {} 40 }; 41 42 static struct kunit_suite is_signed_type_test_suite = { 43 .name = "is_signed_type", 44 .test_cases = is_signed_type_test_cases, 45 }; 46 47 kunit_test_suite(is_signed_type_test_suite); 48 49 MODULE_DESCRIPTION("is_signed_type() KUnit test suite"); 50 MODULE_LICENSE("Dual MIT/GPL"); 51
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.