diff options
Diffstat (limited to 'include/dm')
-rw-r--r-- | include/dm/test.h | 35 | ||||
-rw-r--r-- | include/dm/ut.h | 107 |
2 files changed, 7 insertions, 135 deletions
diff --git a/include/dm/test.h b/include/dm/test.h index f03fbcb..98f2b9e 100644 --- a/include/dm/test.h +++ b/include/dm/test.h @@ -8,7 +8,7 @@ #define __DM_TEST_H #include <dm.h> -#include <malloc.h> +#include <test/test.h> /** * struct dm_test_cdata - configuration data for test instance @@ -124,7 +124,7 @@ struct dm_test_perdev_uc_pdata { */ extern int dm_testdrv_op_count[DM_TEST_OP_COUNT]; -extern struct dm_test_state global_test_state; +extern struct unit_test_state global_dm_test_state; /* * struct dm_test_state - Entire state of dm test system @@ -133,7 +133,6 @@ extern struct dm_test_state global_test_state; * * @root: Root device * @testdev: Test device - * @fail_count: Number of tests that failed * @force_fail_alloc: Force all memory allocs to fail * @skip_post_probe: Skip uclass post-probe processing * @removed: Used to keep track of a device that was removed @@ -141,11 +140,9 @@ extern struct dm_test_state global_test_state; struct dm_test_state { struct udevice *root; struct udevice *testdev; - int fail_count; int force_fail_alloc; int skip_post_probe; struct udevice *removed; - struct mallinfo start; }; /* Test flags for each test */ @@ -155,26 +152,8 @@ enum { DM_TESTF_SCAN_FDT = 1 << 2, /* scan device tree */ }; -/** - * struct dm_test - Information about a driver model test - * - * @name: Name of test - * @func: Function to call to perform test - * @flags: Flags indicated pre-conditions for test - */ -struct dm_test { - const char *name; - int (*func)(struct dm_test_state *dms); - int flags; -}; - /* Declare a new driver model test */ -#define DM_TEST(_name, _flags) \ - ll_entry_declare(struct dm_test, _name, dm_test) = { \ - .name = #_name, \ - .flags = _flags, \ - .func = _name, \ - } +#define DM_TEST(_name, _flags) UNIT_TEST(_name, _flags, dm_test) /* Declare ping methods for the drivers */ int test_ping(struct udevice *dev, int pingval, int *pingret); @@ -191,7 +170,7 @@ int testfdt_ping(struct udevice *dev, int pingval, int *pingret); * @priv: Pointer to private test information * @return 0 if OK, -ve on error */ -int dm_check_operations(struct dm_test_state *dms, struct udevice *dev, +int dm_check_operations(struct unit_test_state *uts, struct udevice *dev, uint32_t base, struct dm_test_priv *priv); /** @@ -201,7 +180,7 @@ int dm_check_operations(struct dm_test_state *dms, struct udevice *dev, * @num_devices: Number of test devices to check * @return 0 if OK, -ve on error */ -int dm_check_devices(struct dm_test_state *dms, int num_devices); +int dm_check_devices(struct unit_test_state *uts, int num_devices); /** * dm_leak_check_start() - Prepare to check for a memory leak @@ -211,7 +190,7 @@ int dm_check_devices(struct dm_test_state *dms, int num_devices); * * @dms: Overall test state */ -void dm_leak_check_start(struct dm_test_state *dms); +void dm_leak_check_start(struct unit_test_state *uts); /** * dm_leak_check_end() - Check that no memory has leaked @@ -221,7 +200,7 @@ void dm_leak_check_start(struct dm_test_state *dms); * it sees a different amount of total memory allocated than before. * * @dms: Overall test state - */int dm_leak_check_end(struct dm_test_state *dms); + */int dm_leak_check_end(struct unit_test_state *uts); /** diff --git a/include/dm/ut.h b/include/dm/ut.h deleted file mode 100644 index ec61465..0000000 --- a/include/dm/ut.h +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Simple unit test library for driver model - * - * Copyright (c) 2013 Google, Inc - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#ifndef __DM_UT_H -#define __DM_UT_H - -struct dm_test_state; - -/** - * ut_fail() - Record failure of a unit test - * - * @dms: Test state - * @fname: Filename where the error occured - * @line: Line number where the error occured - * @func: Function name where the error occured - * @cond: The condition that failed - */ -void ut_fail(struct dm_test_state *dms, const char *fname, int line, - const char *func, const char *cond); - -/** - * ut_failf() - Record failure of a unit test - * - * @dms: Test state - * @fname: Filename where the error occured - * @line: Line number where the error occured - * @func: Function name where the error occured - * @cond: The condition that failed - * @fmt: printf() format string for the error, followed by args - */ -void ut_failf(struct dm_test_state *dms, const char *fname, int line, - const char *func, const char *cond, const char *fmt, ...) - __attribute__ ((format (__printf__, 6, 7))); - - -/* Assert that a condition is non-zero */ -#define ut_assert(cond) \ - if (!(cond)) { \ - ut_fail(dms, __FILE__, __LINE__, __func__, #cond); \ - return -1; \ - } - -/* Assert that a condition is non-zero, with printf() string */ -#define ut_assertf(cond, fmt, args...) \ - if (!(cond)) { \ - ut_failf(dms, __FILE__, __LINE__, __func__, #cond, \ - fmt, ##args); \ - return -1; \ - } - -/* Assert that two int expressions are equal */ -#define ut_asserteq(expr1, expr2) { \ - unsigned int val1 = (expr1), val2 = (expr2); \ - \ - if (val1 != val2) { \ - ut_failf(dms, __FILE__, __LINE__, __func__, \ - #expr1 " == " #expr2, \ - "Expected %d, got %d", val1, val2); \ - return -1; \ - } \ -} - -/* Assert that two string expressions are equal */ -#define ut_asserteq_str(expr1, expr2) { \ - const char *val1 = (expr1), *val2 = (expr2); \ - \ - if (strcmp(val1, val2)) { \ - ut_failf(dms, __FILE__, __LINE__, __func__, \ - #expr1 " = " #expr2, \ - "Expected \"%s\", got \"%s\"", val1, val2); \ - return -1; \ - } \ -} - -/* Assert that two pointers are equal */ -#define ut_asserteq_ptr(expr1, expr2) { \ - const void *val1 = (expr1), *val2 = (expr2); \ - \ - if (val1 != val2) { \ - ut_failf(dms, __FILE__, __LINE__, __func__, \ - #expr1 " = " #expr2, \ - "Expected %p, got %p", val1, val2); \ - return -1; \ - } \ -} - -/* Assert that a pointer is not NULL */ -#define ut_assertnonnull(expr) { \ - const void *val = (expr); \ - \ - if (val == NULL) { \ - ut_failf(dms, __FILE__, __LINE__, __func__, \ - #expr " = NULL", \ - "Expected non-null, got NULL"); \ - return -1; \ - } \ -} - -/* Assert that an operation succeeds (returns 0) */ -#define ut_assertok(cond) ut_asserteq(0, cond) - -#endif |