aboutsummaryrefslogtreecommitdiff
path: root/test/unit-tests.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/unit-tests.c')
-rw-r--r--test/unit-tests.c45
1 files changed, 30 insertions, 15 deletions
diff --git a/test/unit-tests.c b/test/unit-tests.c
index 1e245a5..4a628a0 100644
--- a/test/unit-tests.c
+++ b/test/unit-tests.c
@@ -1746,34 +1746,39 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, 0, NULL, 0, &irq_set);
/* bad message size */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.argsz = 3;
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad .argsz */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.argsz = sizeof (irq_set);
irq_set.index = VFU_DEV_NUM_IRQS;
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad .index */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.index = VFU_DEV_MSIX_IRQ;
irq_set.flags = VFIO_IRQ_SET_ACTION_MASK | VFIO_IRQ_SET_ACTION_UNMASK;
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad flags, MASK and UNMASK */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.flags = VFIO_IRQ_SET_ACTION_MASK | VFIO_IRQ_SET_DATA_NONE |
VFIO_IRQ_SET_DATA_BOOL;
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad flags, DATA_NONE and DATA_BOOL */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.flags = VFIO_IRQ_SET_ACTION_MASK | VFIO_IRQ_SET_DATA_NONE;
irq_set.start = 2047;
@@ -1781,14 +1786,16 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad start, count range */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.start = 2049;
irq_set.count = 1;
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad start, count range */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.start = 0;
irq_set.count = 1;
@@ -1796,13 +1803,15 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad action for err irq */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.index = VFU_DEV_REQ_IRQ;
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad action for req irq */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.start = 1;
irq_set.count = 0;
@@ -1810,7 +1819,8 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad start for count == 0 */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.flags = VFIO_IRQ_SET_ACTION_MASK | VFIO_IRQ_SET_DATA_NONE;
irq_set.count = 0;
@@ -1818,7 +1828,8 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad action for count == 0 */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.flags = VFIO_IRQ_SET_ACTION_TRIGGER | VFIO_IRQ_SET_DATA_BOOL;
irq_set.count = 0;
@@ -1826,7 +1837,8 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), NULL, 0, &irq_set);
/* bad action and data type for count == 0 */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.flags = VFIO_IRQ_SET_ACTION_TRIGGER | VFIO_IRQ_SET_DATA_BOOL;
irq_set.count = 1;
@@ -1834,7 +1846,8 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), &fd, 1, &irq_set);
/* bad fds for DATA_BOOL */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.flags = VFIO_IRQ_SET_ACTION_TRIGGER | VFIO_IRQ_SET_DATA_NONE;
irq_set.count = 1;
@@ -1842,7 +1855,8 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), &fd, 1, &irq_set);
/* bad fds for DATA_NONE */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irq_set.flags = VFIO_IRQ_SET_ACTION_TRIGGER | VFIO_IRQ_SET_DATA_EVENTFD;
irq_set.count = 2;
@@ -1850,7 +1864,8 @@ test_device_set_irqs(UNUSED void **state)
ret = handle_device_set_irqs(&vfu_ctx, sizeof (irq_set), &fd, 1, &irq_set);
/* bad fds for count == 2 */
- assert_int_equal(-EINVAL, ret);
+ assert_int_equal(-1, ret);
+ assert_int_equal(EINVAL, errno);
irqs->err_efd = irqs->req_efd = -1;