Coverage report: /home/ellis/comp/core/ffi/uring/tests.lisp
Kind | Covered | All | % |
expression | 0 | 13 | 0.0 |
branch | 0 | 0 | nil |
Key
Not instrumented
Conditionalized out
Executed
Not executed
Both branches taken
One branch taken
Neither branch taken
1
;;; uring/tests.lisp --- URING Alien Tests
2
(defpackage :uring/tests
3
(:use :cl :rt :std :uring :sb-alien)
4
(:import-from :obj/build :build :build-from))
6
(in-package :uring/tests)
14
(is (= 1 (io-uring-check-version (io-uring-major-version) (io-uring-minor-version)))))
24
(let ((op (uring::build-from (uring::make-io-op-nop) (alien-sap sqe))))
25
(is (typep op '(alien uring::io-uring-sqe)))
26
(is (= (slot op 'uring::fd) -1)))))
28
(deftest simple-vectored ()
31
(let ((rop (uring::build-from (uring::make-io-op-readv) (alien-sap rop)))
32
(wop (uring::build-from (uring::make-io-op-writev) (alien-sap wop))))
33
(istype '(alien uring::io-uring-sqe) rop)
34
(istype '(alien uring::io-uring-sqe) wop)))))
38
(io-uring-queue-init 8 (alien-sap r1) 0)
39
(is (typep r1 '(alien io-uring)))
40
(log::trace! (slot (slot r1 'uring::sq) 'uring::ring-entries))
41
(with-io-uring (r2 (addr r1))
42
(io-uring-queue-init-params 16 (alien-sap r2) (uring::allocate-io-uring-params))
43
(is (typep r2 '(alien (* io-uring))))
44
(is (= 0 (io-uring-queue-exit (alien-sap r2)))))))
48
(io-uring-queue-init 16 (alien-sap r1) 0)
49
(let ((sqe (io-uring-get-sqe r1)))
50
(is (typep sqe '(alien (* io-uring-sqe))))
51
(is (= 0 (io-uring-submit (alien-sap r1))))
52
(uring::build-from (make-io-op-nop) (alien-sap (deref sqe)))
53
(is (= 0 (io-uring-queue-exit (alien-sap r1)))))))
56
(is (io-restriction-p (make-io-restriction))))