From 4e8cfa36133c9be9f9a31a5e212d47f65651f93b Mon Sep 17 00:00:00 2001 From: soukev Date: Tue, 9 Jun 2026 11:03:36 +0200 Subject: Add testing --- Makefile | 27 +++++++++++++++++++++++++++ cl-mdns.asd | 4 ++-- t/client-tests.lisp | 6 ------ t/main.lisp | 4 ++-- t/packet-tests.lisp | 12 ++++++++++++ 5 files changed, 43 insertions(+), 10 deletions(-) create mode 100644 Makefile delete mode 100644 t/client-tests.lisp create mode 100644 t/packet-tests.lisp 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)))) -- cgit v1.2.3