Lines Matching refs:test

6 #include <kunit/test.h>
52 struct kunit *test, size_t buf_size)
57 buf = kunit_kzalloc(test, buf_size, GFP_USER);
58 KUNIT_EXPECT_NOT_ERR_OR_NULL(test, buf);
60 e = kunit_kmalloc(test, sizeof(*e), GFP_USER);
61 KUNIT_EXPECT_NOT_ERR_OR_NULL(test, e);
109 static int policy_unpack_test_init(struct kunit *test)
114 puf = kunit_kmalloc(test, sizeof(*puf), GFP_USER);
115 KUNIT_EXPECT_NOT_ERR_OR_NULL(test, puf);
118 puf->e = build_aa_ext_struct(puf, test, e_size);
120 test->priv = puf;
124 static void policy_unpack_test_inbounds_when_inbounds(struct kunit *test)
126 struct policy_unpack_fixture *puf = test->priv;
128 KUNIT_EXPECT_TRUE(test, inbounds(puf->e, 0));
129 KUNIT_EXPECT_TRUE(test, inbounds(puf->e, puf->e_size / 2));
130 KUNIT_EXPECT_TRUE(test, inbounds(puf->e, puf->e_size));
133 static void policy_unpack_test_inbounds_when_out_of_bounds(struct kunit *test)
135 struct policy_unpack_fixture *puf = test->priv;
137 KUNIT_EXPECT_FALSE(test, inbounds(puf->e, puf->e_size + 1));
140 static void policy_unpack_test_unpack_array_with_null_name(struct kunit *test)
142 struct policy_unpack_fixture *puf = test->priv;
149 KUNIT_EXPECT_EQ(test, array_size, (u16)TEST_ARRAY_SIZE);
150 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
154 static void policy_unpack_test_unpack_array_with_name(struct kunit *test)
156 struct policy_unpack_fixture *puf = test->priv;
164 KUNIT_EXPECT_EQ(test, array_size, (u16)TEST_ARRAY_SIZE);
165 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
169 static void policy_unpack_test_unpack_array_out_of_bounds(struct kunit *test)
171 struct policy_unpack_fixture *puf = test->priv;
180 KUNIT_EXPECT_EQ(test, array_size, (u16)0);
181 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
185 static void policy_unpack_test_unpack_blob_with_null_name(struct kunit *test)
187 struct policy_unpack_fixture *puf = test->priv;
194 KUNIT_ASSERT_EQ(test, size, TEST_BLOB_DATA_SIZE);
195 KUNIT_EXPECT_TRUE(test,
199 static void policy_unpack_test_unpack_blob_with_name(struct kunit *test)
201 struct policy_unpack_fixture *puf = test->priv;
208 KUNIT_ASSERT_EQ(test, size, TEST_BLOB_DATA_SIZE);
209 KUNIT_EXPECT_TRUE(test,
213 static void policy_unpack_test_unpack_blob_out_of_bounds(struct kunit *test)
215 struct policy_unpack_fixture *puf = test->priv;
227 KUNIT_EXPECT_EQ(test, size, 0);
228 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, start);
231 static void policy_unpack_test_unpack_str_with_null_name(struct kunit *test)
233 struct policy_unpack_fixture *puf = test->priv;
240 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1);
241 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA);
244 static void policy_unpack_test_unpack_str_with_name(struct kunit *test)
246 struct policy_unpack_fixture *puf = test->priv;
252 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1);
253 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA);
256 static void policy_unpack_test_unpack_str_out_of_bounds(struct kunit *test)
258 struct policy_unpack_fixture *puf = test->priv;
268 KUNIT_EXPECT_EQ(test, size, 0);
269 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, start);
272 static void policy_unpack_test_unpack_strdup_with_null_name(struct kunit *test)
274 struct policy_unpack_fixture *puf = test->priv;
281 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1);
282 KUNIT_EXPECT_FALSE(test,
285 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA);
288 static void policy_unpack_test_unpack_strdup_with_name(struct kunit *test)
290 struct policy_unpack_fixture *puf = test->priv;
296 KUNIT_EXPECT_EQ(test, size, strlen(TEST_STRING_DATA) + 1);
297 KUNIT_EXPECT_FALSE(test,
300 KUNIT_EXPECT_STREQ(test, string, TEST_STRING_DATA);
303 static void policy_unpack_test_unpack_strdup_out_of_bounds(struct kunit *test)
305 struct policy_unpack_fixture *puf = test->priv;
315 KUNIT_EXPECT_EQ(test, size, 0);
316 KUNIT_EXPECT_PTR_EQ(test, string, (char *)NULL);
317 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, start);
320 static void policy_unpack_test_unpack_nameX_with_null_name(struct kunit *test)
322 struct policy_unpack_fixture *puf = test->priv;
329 KUNIT_EXPECT_TRUE(test, success);
330 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
334 static void policy_unpack_test_unpack_nameX_with_wrong_code(struct kunit *test)
336 struct policy_unpack_fixture *puf = test->priv;
343 KUNIT_EXPECT_FALSE(test, success);
344 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
348 static void policy_unpack_test_unpack_nameX_with_name(struct kunit *test)
350 struct policy_unpack_fixture *puf = test->priv;
358 KUNIT_EXPECT_TRUE(test, success);
359 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
363 static void policy_unpack_test_unpack_nameX_with_wrong_name(struct kunit *test)
365 struct policy_unpack_fixture *puf = test->priv;
373 KUNIT_EXPECT_FALSE(test, success);
374 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
378 static void policy_unpack_test_unpack_u16_chunk_basic(struct kunit *test)
380 struct policy_unpack_fixture *puf = test->priv;
394 KUNIT_EXPECT_PTR_EQ(test, (void *)chunk,
396 KUNIT_EXPECT_EQ(test, size, (size_t)TEST_U16_DATA);
397 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, (void *)(chunk + TEST_U16_DATA));
401 struct kunit *test)
403 struct policy_unpack_fixture *puf = test->priv;
411 KUNIT_EXPECT_EQ(test, size, (size_t)0);
412 KUNIT_EXPECT_PTR_EQ(test, chunk, (char *)NULL);
413 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, puf->e->end - 1);
417 struct kunit *test)
419 struct policy_unpack_fixture *puf = test->priv;
433 KUNIT_EXPECT_EQ(test, size, (size_t)0);
434 KUNIT_EXPECT_PTR_EQ(test, chunk, (char *)NULL);
435 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos, puf->e->start + TEST_U16_OFFSET);
438 static void policy_unpack_test_unpack_u32_with_null_name(struct kunit *test)
440 struct policy_unpack_fixture *puf = test->priv;
448 KUNIT_EXPECT_TRUE(test, success);
449 KUNIT_EXPECT_EQ(test, data, TEST_U32_DATA);
450 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
454 static void policy_unpack_test_unpack_u32_with_name(struct kunit *test)
456 struct policy_unpack_fixture *puf = test->priv;
465 KUNIT_EXPECT_TRUE(test, success);
466 KUNIT_EXPECT_EQ(test, data, TEST_U32_DATA);
467 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
471 static void policy_unpack_test_unpack_u32_out_of_bounds(struct kunit *test)
473 struct policy_unpack_fixture *puf = test->priv;
483 KUNIT_EXPECT_FALSE(test, success);
484 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
488 static void policy_unpack_test_unpack_u64_with_null_name(struct kunit *test)
490 struct policy_unpack_fixture *puf = test->priv;
498 KUNIT_EXPECT_TRUE(test, success);
499 KUNIT_EXPECT_EQ(test, data, TEST_U64_DATA);
500 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
504 static void policy_unpack_test_unpack_u64_with_name(struct kunit *test)
506 struct policy_unpack_fixture *puf = test->priv;
515 KUNIT_EXPECT_TRUE(test, success);
516 KUNIT_EXPECT_EQ(test, data, TEST_U64_DATA);
517 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
521 static void policy_unpack_test_unpack_u64_out_of_bounds(struct kunit *test)
523 struct policy_unpack_fixture *puf = test->priv;
533 KUNIT_EXPECT_FALSE(test, success);
534 KUNIT_EXPECT_PTR_EQ(test, puf->e->pos,
538 static void policy_unpack_test_unpack_X_code_match(struct kunit *test)
540 struct policy_unpack_fixture *puf = test->priv;
543 KUNIT_EXPECT_TRUE(test, success);
544 KUNIT_EXPECT_TRUE(test, puf->e->pos == puf->e->start + 1);
547 static void policy_unpack_test_unpack_X_code_mismatch(struct kunit *test)
549 struct policy_unpack_fixture *puf = test->priv;
552 KUNIT_EXPECT_FALSE(test, success);
553 KUNIT_EXPECT_TRUE(test, puf->e->pos == puf->e->start);
556 static void policy_unpack_test_unpack_X_out_of_bounds(struct kunit *test)
558 struct policy_unpack_fixture *puf = test->priv;
564 KUNIT_EXPECT_FALSE(test, success);