summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsoukev <soukev@soukev.xyz>2026-06-09 11:03:36 +0200
committersoukev <soukev@soukev.xyz>2026-06-09 11:03:36 +0200
commit4e8cfa36133c9be9f9a31a5e212d47f65651f93b (patch)
treed8120e372443bd5f7302b999b330ef032d7974aa
parent3692466424e33278e22faaa8c0c3ae61ac95ffd5 (diff)
Add testingHEADmain
-rw-r--r--Makefile27
-rw-r--r--cl-mdns.asd4
-rw-r--r--t/client-tests.lisp6
-rw-r--r--t/main.lisp4
-rw-r--r--t/packet-tests.lisp12
5 files changed, 43 insertions, 10 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..f91b2aa
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,27 @@
+BIN := cl-mdns
+
+LISP := sbcl
+
+.PHONY: all run install uninstall clean test
+
+all:
+ $(LISP) --non-interactive \
+ --eval '(ql:quickload :cl-mdns)' \
+ --eval '(asdf:make :cl-mdns)'
+
+run:
+ @ ./bin/$(BIN)
+
+test:
+ sbcl --non-interactive \
+ --eval '(asdf:load-system :cl-mdns)' \
+ --eval '(asdf:test-system :cl-mdns)'
+
+install:
+ install -Dm755 ./bin/$(BIN) $(DESTDIR)/usr/local/bin/$(BIN)
+
+uninstall:
+ rm -f $(DESTDIR)/usr/local/bin/$(BIN)
+
+clean: uninstall
+ rm -f ./bin/$(BIN)
diff --git a/cl-mdns.asd b/cl-mdns.asd
index 6cb35a5..a1975b2 100644
--- a/cl-mdns.asd
+++ b/cl-mdns.asd
@@ -3,7 +3,7 @@
:license "GPL 3.0"
:version "0.1.0"
:description ""
- :depends-on ("nibbles" "usocket" "iolib" "fsocket")
+ :depends-on ("nibbles" "usocket" "iolib" "fsocket" "arrow-macros")
:components ((:module "src"
:serial t
:components (
@@ -20,5 +20,5 @@
:components ((:module "t"
:serial t
:components ((:file "main")
- (:file "client-tests"))))
+ (:file "packet-tests"))))
:perform (test-op (o c) (uiop:symbol-call :fiveam :run-all-tests)))
diff --git a/t/client-tests.lisp b/t/client-tests.lisp
deleted file mode 100644
index a7b3ae6..0000000
--- a/t/client-tests.lisp
+++ /dev/null
@@ -1,6 +0,0 @@
-(in-package :cl-mdns-tests)
-
-(def-suite* client-tests :in all-tests)
-
-(test encode-name-test
- (is (equalp (cl-mdns:encode-name "name.local") #(4 110 97 109 101 5 108 111 99 97 108 0))))
diff --git a/t/main.lisp b/t/main.lisp
index 4ac2268..00ebb66 100644
--- a/t/main.lisp
+++ b/t/main.lisp
@@ -1,8 +1,8 @@
(defpackage :cl-mdns-tests
- (:use :cl :fiveam :cl-mdns)
+ (:use :cl :fiveam)
(:export test-all))
(in-package :cl-mdns-tests)
-
+(setf fiveam:*run-test-when-defined* t)
(def-suite* all-tests)
(defun test-all ()
diff --git a/t/packet-tests.lisp b/t/packet-tests.lisp
new file mode 100644
index 0000000..7e728d7
--- /dev/null
+++ b/t/packet-tests.lisp
@@ -0,0 +1,12 @@
+(in-package :cl-mdns-tests)
+
+(def-suite* packet-tests :in all-tests)
+
+(test encode-name-test
+ (is (equalp (cl-mdns/packet:encode-name "name.local") #(4 110 97 109 101 5 108 111 99 97 108 0))))
+
+(test parse-query-test
+ (let* ((domain-name "name.local")
+ (query (cl-mdns/packet:build-query-packet domain-name))
+ (parsed (cl-mdns/packet:parse-query query)))
+ (is (equal parsed domain-name))))