Lines Matching full:test
6 #include <kunit/test.h>
55 struct kunit *test, size_t buf_size) in build_aa_ext_struct() argument
60 buf = kunit_kzalloc(test, buf_size, GFP_USER); in build_aa_ext_struct()
61 KUNIT_EXPECT_NOT_ERR_OR_NULL(test, buf); in build_aa_ext_struct()
63 e = kunit_kmalloc(test, sizeof(*e), GFP_USER); in build_aa_ext_struct()
64 KUNIT_EXPECT_NOT_ERR_OR_NULL(test, e); in build_aa_ext_struct()
111 static int policy_unpack_test_init(struct kunit *test) in policy_unpack_test_init() argument
116 puf = kunit_kmalloc(test, sizeof(*puf), GFP_USER); in policy_unpack_test_init()
117 KUNIT_EXPECT_NOT_ERR_OR_NULL(test, puf); in policy_unpack_test_init()
120 puf->e = build_aa_ext_struct(puf, test, e_size); in policy_unpack_test_init()
122 test->priv = puf; in policy_unpack_test_init()
126 static void policy_unpack_test_inbounds_when_inbounds(struct kunit *test) in policy_unpack_test_inbounds_when_inbounds() argument
128 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_inbounds_when_inbounds()
130 KUNIT_EXPECT_TRUE(test, aa_inbounds(puf->e, 0)); in policy_unpack_test_inbounds_when_inbounds()
131 KUNIT_EXPECT_TRUE(test, aa_inbounds(puf->e, puf->e_size / 2)); in policy_unpack_test_inbounds_when_inbounds()
132 KUNIT_EXPECT_TRUE(test, aa_inbounds(puf->e, puf->e_size)); in policy_unpack_test_inbounds_when_inbounds()
135 static void policy_unpack_test_inbounds_when_out_of_bounds(struct kunit *test) in policy_unpack_test_inbounds_when_out_of_bounds() argument
137 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_inbounds_when_out_of_bounds()
139 KUNIT_EXPECT_FALSE(test, aa_inbounds(puf->e, puf->e_size + 1)); in policy_unpack_test_inbounds_when_out_of_bounds()
142 static void policy_unpack_test_unpack_array_with_null_name(struct kunit *test) in policy_unpack_test_unpack_array_with_null_name() argument
144 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_array_with_null_name()
149 KUNIT_EXPECT_TRUE(test, aa_unpack_array(puf->e, NULL, &array_size)); in policy_unpack_test_unpack_array_with_null_name()
150 KUNIT_EXPECT_EQ(test, array_size, (u16)TEST_ARRAY_SIZE); in policy_unpack_test_unpack_array_with_null_name()
151 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_array_with_null_name()
155 static void policy_unpack_test_unpack_array_with_name(struct kunit *test) in policy_unpack_test_unpack_array_with_name() argument
157 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_array_with_name()
163 KUNIT_EXPECT_TRUE(test, aa_unpack_array(puf->e, name, &array_size)); in policy_unpack_test_unpack_array_with_name()
164 KUNIT_EXPECT_EQ(test, array_size, (u16)TEST_ARRAY_SIZE); in policy_unpack_test_unpack_array_with_name()
165 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_array_with_name()
169 static void policy_unpack_test_unpack_array_out_of_bounds(struct kunit *test) in policy_unpack_test_unpack_array_out_of_bounds() argument
171 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_array_out_of_bounds()
178 KUNIT_EXPECT_FALSE(test, aa_unpack_array(puf->e, name, &array_size)); in policy_unpack_test_unpack_array_out_of_bounds()
179 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_array_out_of_bounds()
183 static void policy_unpack_test_unpack_blob_with_null_name(struct kunit *test) in policy_unpack_test_unpack_blob_with_null_name() argument
185 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_blob_with_null_name()
192 KUNIT_ASSERT_EQ(test, size, TEST_BLOB_DATA_SIZE); in policy_unpack_test_unpack_blob_with_null_name()
193 KUNIT_EXPECT_TRUE(test, in policy_unpack_test_unpack_blob_with_null_name()
197 static void policy_unpack_test_unpack_blob_with_name(struct kunit *test) in policy_unpack_test_unpack_blob_with_name() argument
199 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_blob_with_name()
206 KUNIT_ASSERT_EQ(test, size, TEST_BLOB_DATA_SIZE); in policy_unpack_test_unpack_blob_with_name()
207 KUNIT_EXPECT_TRUE(test, in policy_unpack_test_unpack_blob_with_name()
211 static void policy_unpack_test_unpack_blob_out_of_bounds(struct kunit *test) in policy_unpack_test_unpack_blob_out_of_bounds() argument
213 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_blob_out_of_bounds()
225 KUNIT_EXPECT_EQ(test, size, 0); in policy_unpack_test_unpack_blob_out_of_bounds()
226 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, start); in policy_unpack_test_unpack_blob_out_of_bounds()
229 static void policy_unpack_test_unpack_str_with_null_name(struct kunit *test) in policy_unpack_test_unpack_str_with_null_name() argument
231 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_str_with_null_name()
238 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1); in policy_unpack_test_unpack_str_with_null_name()
239 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA); in policy_unpack_test_unpack_str_with_null_name()
242 static void policy_unpack_test_unpack_str_with_name(struct kunit *test) in policy_unpack_test_unpack_str_with_name() argument
244 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_str_with_name()
250 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1); in policy_unpack_test_unpack_str_with_name()
251 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA); in policy_unpack_test_unpack_str_with_name()
254 static void policy_unpack_test_unpack_str_out_of_bounds(struct kunit *test) in policy_unpack_test_unpack_str_out_of_bounds() argument
256 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_str_out_of_bounds()
266 KUNIT_EXPECT_EQ(test, size, 0); in policy_unpack_test_unpack_str_out_of_bounds()
267 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, start); in policy_unpack_test_unpack_str_out_of_bounds()
270 static void policy_unpack_test_unpack_strdup_with_null_name(struct kunit *test) in policy_unpack_test_unpack_strdup_with_null_name() argument
272 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_strdup_with_null_name()
279 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1); in policy_unpack_test_unpack_strdup_with_null_name()
280 KUNIT_EXPECT_FALSE(test, in policy_unpack_test_unpack_strdup_with_null_name()
283 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA); in policy_unpack_test_unpack_strdup_with_null_name()
288 static void policy_unpack_test_unpack_strdup_with_name(struct kunit *test) in policy_unpack_test_unpack_strdup_with_name() argument
290 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_strdup_with_name()
296 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1); in policy_unpack_test_unpack_strdup_with_name()
297 KUNIT_EXPECT_FALSE(test, in policy_unpack_test_unpack_strdup_with_name()
300 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA); in policy_unpack_test_unpack_strdup_with_name()
305 static void policy_unpack_test_unpack_strdup_out_of_bounds(struct kunit *test) in policy_unpack_test_unpack_strdup_out_of_bounds() argument
307 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_strdup_out_of_bounds()
317 KUNIT_EXPECT_EQ(test, size, 0); in policy_unpack_test_unpack_strdup_out_of_bounds()
318 KUNIT_EXPECT_NULL(test, string); in policy_unpack_test_unpack_strdup_out_of_bounds()
319 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, start); in policy_unpack_test_unpack_strdup_out_of_bounds()
324 static void policy_unpack_test_unpack_nameX_with_null_name(struct kunit *test) in policy_unpack_test_unpack_nameX_with_null_name() argument
326 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_nameX_with_null_name()
333 KUNIT_EXPECT_TRUE(test, success); in policy_unpack_test_unpack_nameX_with_null_name()
334 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_nameX_with_null_name()
338 static void policy_unpack_test_unpack_nameX_with_wrong_code(struct kunit *test) in policy_unpack_test_unpack_nameX_with_wrong_code() argument
340 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_nameX_with_wrong_code()
347 KUNIT_EXPECT_FALSE(test, success); in policy_unpack_test_unpack_nameX_with_wrong_code()
348 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_nameX_with_wrong_code()
352 static void policy_unpack_test_unpack_nameX_with_name(struct kunit *test) in policy_unpack_test_unpack_nameX_with_name() argument
354 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_nameX_with_name()
362 KUNIT_EXPECT_TRUE(test, success); in policy_unpack_test_unpack_nameX_with_name()
363 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_nameX_with_name()
367 static void policy_unpack_test_unpack_nameX_with_wrong_name(struct kunit *test) in policy_unpack_test_unpack_nameX_with_wrong_name() argument
369 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_nameX_with_wrong_name()
377 KUNIT_EXPECT_FALSE(test, success); in policy_unpack_test_unpack_nameX_with_wrong_name()
378 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_nameX_with_wrong_name()
382 static void policy_unpack_test_unpack_u16_chunk_basic(struct kunit *test) in policy_unpack_test_unpack_u16_chunk_basic() argument
384 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u16_chunk_basic()
398 KUNIT_EXPECT_PTR_EQ(test, chunk, in policy_unpack_test_unpack_u16_chunk_basic()
400 KUNIT_EXPECT_EQ(test, size, TEST_U16_DATA); in policy_unpack_test_unpack_u16_chunk_basic()
401 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, (chunk + TEST_U16_DATA)); in policy_unpack_test_unpack_u16_chunk_basic()
405 struct kunit *test) in policy_unpack_test_unpack_u16_chunk_out_of_bounds_1() argument
407 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u16_chunk_out_of_bounds_1()
415 KUNIT_EXPECT_EQ(test, size, 0); in policy_unpack_test_unpack_u16_chunk_out_of_bounds_1()
416 KUNIT_EXPECT_NULL(test, chunk); in policy_unpack_test_unpack_u16_chunk_out_of_bounds_1()
417 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, puf->e->end - 1); in policy_unpack_test_unpack_u16_chunk_out_of_bounds_1()
421 struct kunit *test) in policy_unpack_test_unpack_u16_chunk_out_of_bounds_2() argument
423 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u16_chunk_out_of_bounds_2()
437 KUNIT_EXPECT_EQ(test, size, 0); in policy_unpack_test_unpack_u16_chunk_out_of_bounds_2()
438 KUNIT_EXPECT_NULL(test, chunk); in policy_unpack_test_unpack_u16_chunk_out_of_bounds_2()
439 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, puf->e->start + TEST_U16_OFFSET); in policy_unpack_test_unpack_u16_chunk_out_of_bounds_2()
442 static void policy_unpack_test_unpack_u32_with_null_name(struct kunit *test) in policy_unpack_test_unpack_u32_with_null_name() argument
444 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u32_with_null_name()
452 KUNIT_EXPECT_TRUE(test, success); in policy_unpack_test_unpack_u32_with_null_name()
453 KUNIT_EXPECT_EQ(test, data, TEST_U32_DATA); in policy_unpack_test_unpack_u32_with_null_name()
454 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_u32_with_null_name()
458 static void policy_unpack_test_unpack_u32_with_name(struct kunit *test) in policy_unpack_test_unpack_u32_with_name() argument
460 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u32_with_name()
469 KUNIT_EXPECT_TRUE(test, success); in policy_unpack_test_unpack_u32_with_name()
470 KUNIT_EXPECT_EQ(test, data, TEST_U32_DATA); in policy_unpack_test_unpack_u32_with_name()
471 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_u32_with_name()
475 static void policy_unpack_test_unpack_u32_out_of_bounds(struct kunit *test) in policy_unpack_test_unpack_u32_out_of_bounds() argument
477 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u32_out_of_bounds()
487 KUNIT_EXPECT_FALSE(test, success); in policy_unpack_test_unpack_u32_out_of_bounds()
488 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_u32_out_of_bounds()
492 static void policy_unpack_test_unpack_u64_with_null_name(struct kunit *test) in policy_unpack_test_unpack_u64_with_null_name() argument
494 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u64_with_null_name()
502 KUNIT_EXPECT_TRUE(test, success); in policy_unpack_test_unpack_u64_with_null_name()
503 KUNIT_EXPECT_EQ(test, data, TEST_U64_DATA); in policy_unpack_test_unpack_u64_with_null_name()
504 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_u64_with_null_name()
508 static void policy_unpack_test_unpack_u64_with_name(struct kunit *test) in policy_unpack_test_unpack_u64_with_name() argument
510 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u64_with_name()
519 KUNIT_EXPECT_TRUE(test, success); in policy_unpack_test_unpack_u64_with_name()
520 KUNIT_EXPECT_EQ(test, data, TEST_U64_DATA); in policy_unpack_test_unpack_u64_with_name()
521 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_u64_with_name()
525 static void policy_unpack_test_unpack_u64_out_of_bounds(struct kunit *test) in policy_unpack_test_unpack_u64_out_of_bounds() argument
527 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_u64_out_of_bounds()
537 KUNIT_EXPECT_FALSE(test, success); in policy_unpack_test_unpack_u64_out_of_bounds()
538 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, in policy_unpack_test_unpack_u64_out_of_bounds()
542 static void policy_unpack_test_unpack_X_code_match(struct kunit *test) in policy_unpack_test_unpack_X_code_match() argument
544 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_X_code_match()
547 KUNIT_EXPECT_TRUE(test, success); in policy_unpack_test_unpack_X_code_match()
548 KUNIT_EXPECT_TRUE(test, puf->e->pos == puf->e->start + 1); in policy_unpack_test_unpack_X_code_match()
551 static void policy_unpack_test_unpack_X_code_mismatch(struct kunit *test) in policy_unpack_test_unpack_X_code_mismatch() argument
553 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_X_code_mismatch()
556 KUNIT_EXPECT_FALSE(test, success); in policy_unpack_test_unpack_X_code_mismatch()
557 KUNIT_EXPECT_TRUE(test, puf->e->pos == puf->e->start); in policy_unpack_test_unpack_X_code_mismatch()
560 static void policy_unpack_test_unpack_X_out_of_bounds(struct kunit *test) in policy_unpack_test_unpack_X_out_of_bounds() argument
562 struct policy_unpack_fixture *puf = test->priv; in policy_unpack_test_unpack_X_out_of_bounds()
568 KUNIT_EXPECT_FALSE(test, success); in policy_unpack_test_unpack_X_out_of_bounds()