u-boot/test/dm/ut.c
Simon Glass 2e7d35d2a6 dm: Add basic tests
Add some tests of driver model functionality. Coverage includes:

- basic init
- binding of drivers to devices using platform_data
- automatic probing of devices when referenced
- availability of platform data to devices
- lifecycle from bind to probe to remove to unbind
- renumbering within a uclass when devices are probed/removed
- calling driver-defined operations
- deactivation of drivers when removed
- memory leak across creation and destruction of drivers/uclasses
- uclass init/destroy methods
- automatic probe/remove of children/parents when needed

This function is enabled for sandbox, using CONFIG_DM_TEST.

Signed-off-by: Simon Glass <sjg@chromium.org>
2014-03-04 12:15:29 -05:00

33 lines
706 B
C

/*
* Simple unit test library for driver model
*
* Copyright (c) 2013 Google, Inc
*
* SPDX-License-Identifier: GPL-2.0+
*/
#include <common.h>
#include <dm/test.h>
#include <dm/ut.h>
struct dm_test_state;
void ut_fail(struct dm_test_state *dms, const char *fname, int line,
const char *func, const char *cond)
{
printf("%s:%d, %s(): %s\n", fname, line, func, cond);
dms->fail_count++;
}
void ut_failf(struct dm_test_state *dms, const char *fname, int line,
const char *func, const char *cond, const char *fmt, ...)
{
va_list args;
printf("%s:%d, %s(): %s: ", fname, line, func, cond);
va_start(args, fmt);
vprintf(fmt, args);
va_end(args);
putc('\n');
dms->fail_count++;
}