tests: Add clear halt test
authorStanislaw Wadas <s.wadas@samsung.com>
Tue, 6 Oct 2015 11:39:21 +0000 (13:39 +0200)
committerStanislaw Wadas <s.wadas@samsung.com>
Thu, 22 Oct 2015 09:34:20 +0000 (11:34 +0200)
Change-Id: I1a6dc5e6cba7cd61b948c05ca6ca8cdd1df9ee7c
Signed-off-by: Stanislaw Wadas <s.wadas@samsung.com>
tests/libhusb-test.c
tests/libusb-wrap.c

index 7a4b5a8ac62fe71530867c45ec9620bfcdd4e4a1..a8d090a4cc7ac7d99e83d174b47f899202882acc 100644 (file)
@@ -360,6 +360,24 @@ static void test_release_interface_simple(void **state)
        assert_return_code(ret, 0);
 }
 
+static void test_clear_halt(void **state)
+{
+       libhusb_device_handle *handle;
+       uint8_t ep, ret;
+
+       ep = rand();
+       handle = (libhusb_device_handle *)(*state);
+       assert_non_null(handle);
+
+       expect_value(libusb_clear_halt, dev, handle->lusb_dev_handle);
+       expect_value(libusb_clear_halt, endpoint, ep);
+       will_return(libusb_clear_halt, 0);
+
+       ret = libhusb_clear_halt(handle, ep);
+
+       assert_return_code(ret, 0);
+}
+
 static void test_control_transfer(void **state)
 {
        uint8_t request_type, bRequest;
@@ -479,6 +497,7 @@ static struct CMUnitTest tests[] = {
                HUSB_TEST_DEV_HANDLE(test_bulk_transfer_simple),
                HUSB_TEST_DEV_HANDLE(test_release_interface_simple),
                HUSB_TEST_DEV_HANDLE(test_interrupt_transfer_simple),
+               HUSB_TEST_DEV_HANDLE(test_clear_halt),
 };
 
 
index 458f48d13b62819246b1698e5a10c42088702bd2..c526cbc32a3e7137377b03c8b7f672ae9b6f018e 100644 (file)
@@ -231,7 +231,9 @@ int libusb_set_interface_alt_setting(libusb_device_handle *dev,
 int libusb_clear_halt(libusb_device_handle *dev,
        unsigned char endpoint)
 {
-       return 0;
+       check_expected(dev);
+       check_expected(endpoint);
+       return mock_type(int);
 }
 
 int libusb_reset_device(libusb_device_handle *dev)