From 8e62161e1d1a7f2f3732dfd66f85ecb09fe19c98 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?John=20Ankarstr=C3=B6m?= <john@ankarstrom.se>
Date: Mon, 21 Jun 2021 12:56:03 +0200
Subject: Add tests

---
 t/Makefile |  11 +++++++++++
 t/ne.pdf   | Bin 0 -> 14878 bytes
 t/ne.t     |  64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 t/t.tmac   |  24 +++++++++++++++++++++++
 4 files changed, 99 insertions(+)
 create mode 100644 t/Makefile
 create mode 100644 t/ne.pdf
 create mode 100644 t/ne.t
 create mode 100644 t/t.tmac

(limited to 't')

diff --git a/t/Makefile b/t/Makefile
new file mode 100644
index 0000000..6027724
--- /dev/null
+++ b/t/Makefile
@@ -0,0 +1,11 @@
+.SUFFIXES: .t .T .pdf
+TEST != ls *.t | sed 's/t$$/T/'
+
+all: $(TEST)
+
+.t.T:
+	@echo -- $< -----------------------
+	@groff -Tps $< >/dev/null
+
+.t.pdf:
+	groff -Tps $< | ps2pdf - > $@
diff --git a/t/ne.pdf b/t/ne.pdf
new file mode 100644
index 0000000..c3f7c5c
Binary files /dev/null and b/t/ne.pdf differ
diff --git a/t/ne.t b/t/ne.t
new file mode 100644
index 0000000..564f686
--- /dev/null
+++ b/t/ne.t
@@ -0,0 +1,64 @@
+.so ../g.tmac
+.so t.tmac
+.
+.t
+ne.t: test space requests
+.p
+This file tests the
+.c w
+macro.
+.
+.\" helper macros
+.
+.\" make space for exactly 's pp' at bottom of page
+.de makespace
+. rs
+. rt 0
+. sp \n(.pu-\n(mbu-39601u
+. nr _ \\n%
+..
+.
+.\" write 's pp'
+.de write
+. s
+. nr s \\n%
+Lorem ipsum
+. p
+. nr p \\n%
+Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+eiusmod tempor incididunt ut labore et dolore magna aliqua.
+. nr pp \\n%
+Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
+nisi ut aliquip ex ea commodo consequat.
+Duis aute irure dolor in reprehenderit in voluptate velit esse
+cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
+cupidatat non proident, sunt in culpa qui officia deserunt mollit
+anim id est laborum.
+..
+.
+.\" run tests
+.
+.test s pp +0u
+.bp
+.makespace
+.w s pp
+.write
+.assert (\n_=\ns)&(\ns=\np)&(\np=\n(pp)
+.
+.test s pp +1u
+.bp
+.makespace
+.sp 1u
+.w s pp
+.write
+.assert (\n_<\ns)&(\ns=\np)&(\np=\n(pp)
+.
+.test s pp +2u
+.bp
+.makespace
+.sp 2u
+.w s pp
+.write
+.assert (\n_<\ns)&(\ns=\np)&(\np=\n(pp)
+.
+.end
diff --git a/t/t.tmac b/t/t.tmac
new file mode 100644
index 0000000..c266c1f
--- /dev/null
+++ b/t/t.tmac
@@ -0,0 +1,24 @@
+.\" start test
+.de test
+. nr t +1
+. tmc test \\nt (\\$*):
+..
+.
+.\" make assertion
+.de assert
+.ie \\$1 \{\
+. tm1 "	success
+.\}
+.el \{\
+. tm1 "	failure: \\$1
+. nr f +1
+.\}
+..
+.\" end tests
+.de end
+. ie \\nf=0 .tm ** \\nt test(s) finished successfully **
+. el \{
+.  ab !! \\nf test(s) failed !!
+. \}
+..
+.
-- 
cgit v1.2.3