summaryrefslogtreecommitdiff
path: root/tests/test-mqueue-read.lua
diff options
context:
space:
mode:
authorRob Kendrick (trite) <rjek@rjek.com>2013-08-27 11:32:16 +0100
committerRob Kendrick (trite) <rjek@rjek.com>2013-08-27 11:32:16 +0100
commit47c4323a22541dad7d2a4052dd6a80959d941db1 (patch)
tree622ef0e2c11146e723a7a24630f3a69154ef9daa /tests/test-mqueue-read.lua
parent6fdfdb83d119617d67409c6c10fe5119a735db8e (diff)
downloadluxio-47c4323a22541dad7d2a4052dd6a80959d941db1.tar.gz
Change message queues to use user data. Include simple test scripts.
Diffstat (limited to 'tests/test-mqueue-read.lua')
-rw-r--r--tests/test-mqueue-read.lua29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/test-mqueue-read.lua b/tests/test-mqueue-read.lua
new file mode 100644
index 0000000..d8aeb90
--- /dev/null
+++ b/tests/test-mqueue-read.lua
@@ -0,0 +1,29 @@
+l = require "luxio"
+s = require "luxio.simple"
+
+local mq, errno
+
+mq, errno = l.mq_open("/luxio.test", l.bit.bor(l.O_RDONLY, l.O_CREAT), s.tomode "0777")
+
+if mq == -1 then
+ error(l.strerror(errno))
+end
+
+
+io.stdout:write(tostring(mq) .. " attributes:\n")
+
+r, errno, attr = l.mq_getattr(mq)
+
+for i, v in pairs(attr) do
+ io.stdout:write(" ", i, " ", v, "\n")
+end
+
+local message, bytes, priority
+
+repeat
+ bytes, errno, message, priority = l.mq_receive(mq)
+ print(bytes, errno, message, priority)
+until message == "QUIT" or bytes == -1
+
+l.mq_close(mq)
+l.mq_unlink "/luxio-test"