tests: Add attach kernel driver test
authorStanislaw Wadas <s.wadas@samsung.com>
Tue, 6 Oct 2015 14:00:40 +0000 (16:00 +0200)
committerStanislaw Wadas <s.wadas@samsung.com>
Wed, 2 Dec 2015 12:50:46 +0000 (13:50 +0100)
Change-Id: I3726a098b201c02afe7db4e03abaedc9da1f0c6d
Signed-off-by: Stanislaw Wadas <s.wadas@samsung.com>
tests/libhusb-test.c
tests/libusb-wrap.c

index c28eb718033cec2aad28e4ce8f482f728858d4e9..3ec6fe65dd28bba5080bd89d814eee0719838289 100644 (file)
@@ -430,6 +430,24 @@ static void test_detach_kernel_driver(void **state)
        assert_return_code(ret, 0);
 }
 
+static void test_attach_kernel_driver(void **state)
+{
+       libhusb_device_handle *handle;
+       int ret,iface;
+
+       iface = rand();
+       handle = (libhusb_device_handle *)(*state);
+       assert_non_null(handle);
+
+       expect_value(libusb_attach_kernel_driver, dev, handle->lusb_dev_handle);
+       expect_value(libusb_attach_kernel_driver, interface_number, iface);
+       will_return(libusb_attach_kernel_driver, 0);
+
+       ret = libhusb_attach_kernel_driver(handle, iface);
+
+       assert_return_code(ret, 0);
+}
+
 static void test_control_transfer(void **state)
 {
        uint8_t request_type, bRequest;
@@ -553,6 +571,7 @@ static struct CMUnitTest tests[] = {
                HUSB_TEST_DEV_HANDLE(test_reset_device),
                HUSB_TEST_DEV_HANDLE(test_kernel_driver_active),
                HUSB_TEST_DEV_HANDLE(test_detach_kernel_driver),
+               HUSB_TEST_DEV_HANDLE(test_attach_kernel_driver),
 };
 
 
index 3d11391905ee61115370ded7d37fcc12456ac2f1..648220a3b5ff4999482e20ef878e0a9c0d04499a 100644 (file)
@@ -261,7 +261,9 @@ int libusb_detach_kernel_driver(libusb_device_handle *dev,
 int libusb_attach_kernel_driver(libusb_device_handle *dev,
        int interface_number)
 {
-       return 0;
+       check_expected(dev);
+       check_expected(interface_number);
+       return mock_type(int);
 }
 
 int libusb_control_transfer(libusb_device_handle *dev_handle,