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,