return 0;
}
+static int setup_libhusb_dev_handle(void **state)
+{
+ libhusb_device_handle *dev;
+
+ dev = malloc(sizeof(libhusb_device_handle));
+ /* TODO fill this with something? */
+
+ *state = dev;
+
+ return 0;
+}
+
/**
* @brief Just free the memory
*/
assert_return_code(ret, 0);
}
+static void test_get_active_config(void **state)
+{
+ libhusb_device_handle *handle;
+ int conf, expected, ret;
+
+ handle = (libhusb_device_handle *)(*state);
+ expected = rand();
+
+ expect_value(libusb_get_configuration, dev, handle->lusb_dev_handle);
+ will_return(libusb_get_configuration, expected);
+ will_return(libusb_get_configuration, 0);
+
+ ret = libhusb_get_active_config(handle, &conf);
+
+ assert_return_code(ret, 0);
+ assert_int_equal(conf, expected);
+}
+
/* Custom macro for defining test with given name and fixed teardown function */
#define HUSB_TEST(func, setup, teardown) \
cmocka_unit_test_setup_teardown(func, setup, teardown)
cmocka_unit_test_setup_teardown(func, setup_libhusb_context, teardown_libhusb_context)
#define HUSB_TEST_DEVICE(func) \
cmocka_unit_test_setup_teardown(func, setup_libhusb_device, teardown_free)
+#define HUSB_TEST_DEV_HANDLE(func) \
+ cmocka_unit_test_setup_teardown(func, setup_libhusb_dev_handle, teardown_free)
#define HUSB_TEST_NOSETUP(func) \
cmocka_unit_test(func)
HUSB_TEST_DEVICE(test_get_bus_number),
HUSB_TEST_DEVICE(test_get_address),
HUSB_TEST_DEVICE(test_get_device_descriptor),
+ HUSB_TEST_DEV_HANDLE(test_get_active_config),
};