mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 23:22:37 +02:00
tests: Add wrap for libusb_init and use it in dediprog test
Missing wrap for libusb_init has been discovered while working on the test for raiden_debug_spi. Both dediprog (existing test) and raiden_debug_spi (new test, see later in this chain) are using libusb_init, so it definitely needs to be wrapped and added to io_mock. Why tests worked before, without the wrap: my understanding is that real libusb_init was called for dediprog test? Given that tests definitely should not call any real libusb functions, wrap is needed. BUG=b:181803212 TEST=builds and ninja test Change-Id: I51c9cb96db1afb3298f4d098df96509d3cb3c046 Signed-off-by: Anastasia Klimchuk <aklm@chromium.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/57917 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
parent
a7a59cf0bb
commit
92989f2496
@ -54,6 +54,13 @@ void nicrealtek_init_and_shutdown_test_success(void **state)
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
int dediprog_libusb_init(void *state, libusb_context **ctx)
|
||||
{
|
||||
*ctx = not_null();
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dediprog_libusb_control_transfer(void *state,
|
||||
libusb_device_handle *devh,
|
||||
uint8_t bmRequestType,
|
||||
@ -75,6 +82,7 @@ void dediprog_init_and_shutdown_test_success(void **state)
|
||||
{
|
||||
#if CONFIG_DEDIPROG == 1
|
||||
const struct io_mock dediprog_io = {
|
||||
.libusb_init = dediprog_libusb_init,
|
||||
.libusb_control_transfer = dediprog_libusb_control_transfer,
|
||||
};
|
||||
|
||||
|
@ -70,6 +70,7 @@ struct io_mock {
|
||||
unsigned int (*inl)(void *state, unsigned short port);
|
||||
|
||||
/* USB I/O */
|
||||
int (*libusb_init)(void *state, libusb_context **ctx);
|
||||
int (*libusb_control_transfer)(void *state,
|
||||
libusb_device_handle *devh,
|
||||
uint8_t bmRequestType,
|
||||
|
@ -23,6 +23,14 @@ void *__wrap_usb_dev_get_by_vid_pid_number(
|
||||
return not_null();
|
||||
}
|
||||
|
||||
int __wrap_libusb_init(libusb_context **ctx)
|
||||
{
|
||||
LOG_ME;
|
||||
if (get_io() && get_io()->libusb_init)
|
||||
return get_io()->libusb_init(get_io()->state, ctx);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int __wrap_libusb_set_configuration(libusb_device_handle *devh, int config)
|
||||
{
|
||||
LOG_ME;
|
||||
|
@ -64,6 +64,7 @@ mocks = [
|
||||
'-Wl,--wrap=test_outl',
|
||||
'-Wl,--wrap=test_inl',
|
||||
'-Wl,--wrap=usb_dev_get_by_vid_pid_number',
|
||||
'-Wl,--wrap=libusb_init',
|
||||
'-Wl,--wrap=libusb_set_configuration',
|
||||
'-Wl,--wrap=libusb_claim_interface',
|
||||
'-Wl,--wrap=libusb_control_transfer',
|
||||
|
Loading…
x
Reference in New Issue
Block a user