From: Pawel Szewczyk Date: Tue, 29 Sep 2015 14:08:18 +0000 (+0200) Subject: tests: Add get_active_config test X-Git-Tag: submit/tizen_common/20160317.155115~26 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=99a10347c15970bcae6df5bd5f643bfc32ee501d;p=platform%2Fcore%2Fapi%2Fusb-host.git tests: Add get_active_config test Change-Id: I77b0c502d708e90edf332fda6eec8dda29210aa6 Signed-off-by: Pawel Szewczyk --- diff --git a/tests/libhusb-test.c b/tests/libhusb-test.c index 1fc8164..b2ced9c 100644 --- a/tests/libhusb-test.c +++ b/tests/libhusb-test.c @@ -75,6 +75,18 @@ static int setup_libhusb_device(void **state) 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 */ @@ -221,6 +233,24 @@ static void test_get_device_descriptor(void **state) 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) @@ -228,6 +258,8 @@ static void test_get_device_descriptor(void **state) 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) @@ -245,6 +277,7 @@ static struct CMUnitTest tests[] = { 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), }; diff --git a/tests/libusb-wrap.c b/tests/libusb-wrap.c index 0ba2213..ac97d8a 100644 --- a/tests/libusb-wrap.c +++ b/tests/libusb-wrap.c @@ -103,7 +103,9 @@ void libusb_unref_device(libusb_device *dev) int libusb_get_configuration(libusb_device_handle *dev, int *config) { - return 0; + check_expected(dev); + *config = mock_type(int); + return mock_type(int); } int libusb_get_device_descriptor(libusb_device *dev,