aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2019-01-05 20:04:50 +0000
committerIngo Schwarze <schwarze@openbsd.org>2019-01-05 20:04:50 +0000
commitc33a3366a3d5db0a3182110ecfe15ded97489b77 (patch)
tree1b8d3c2c6d13948db53cc88d0594e9caca28d017
parent0ff0ed9ccba23c2bb72acd03d35240498c7dff6e (diff)
downloadmandoc-c33a3366a3d5db0a3182110ecfe15ded97489b77.tar.gz
mandoc-c33a3366a3d5db0a3182110ecfe15ded97489b77.tar.zst
mandoc-c33a3366a3d5db0a3182110ecfe15ded97489b77.zip
Slowly start doing more HTML output tests, in this case for the
interaction of .nf and .RS, related to man_macro.c rev. 1.106. HTML regression testing is tricky because it is extremely prone to over-testing, i.e. unintentional testing for volatile formatting details which are irrelevant for deciding whether the HTML output is good or bad. Minor changes to the formatter - which is still heavily under development - might result in the necessity to repeatedly adjust many test cases. Then again, HTML syntax rules are so complicated that without regression testing, the risk is simply too high that later changes will re-introduce issues that were already fixed earlier. Let's just try to design the tests very carefully in such a way that the *.out_html files contain nothing that is likely to change, and defer testing in cases where the HTML output is not yet clean enough to allow designing tests in such a way.
-rw-r--r--regress/man/RS/Makefile3
-rw-r--r--regress/man/RS/literal.in18
-rw-r--r--regress/man/RS/literal.out_ascii15
-rw-r--r--regress/man/RS/literal.out_html20
4 files changed, 44 insertions, 12 deletions
diff --git a/regress/man/RS/Makefile b/regress/man/RS/Makefile
index fda516e0..34c0029c 100644
--- a/regress/man/RS/Makefile
+++ b/regress/man/RS/Makefile
@@ -1,7 +1,8 @@
-# $OpenBSD: Makefile,v 1.11 2015/04/06 13:34:54 schwarze Exp $
+# $OpenBSD: Makefile,v 1.13 2019/01/05 20:00:33 schwarze Exp $
REGRESS_TARGETS = an-margin breaking broken empty literal lonelyRE
REGRESS_TARGETS += nested noRE nowidth REarg width
LINT_TARGETS = empty lonelyRE noRE REarg
+HTML_TARGETS = literal
.include <bsd.regress.mk>
diff --git a/regress/man/RS/literal.in b/regress/man/RS/literal.in
index c77e2aec..3a1a29a3 100644
--- a/regress/man/RS/literal.in
+++ b/regress/man/RS/literal.in
@@ -1,19 +1,27 @@
-.\" $OpenBSD: literal.in,v 1.2 2017/07/04 14:53:23 schwarze Exp $
-.TH RS-LITERAL 1 "January 5, 2013"
+.\" $OpenBSD: literal.in,v 1.3 2019/01/05 20:00:33 schwarze Exp $
+.TH RS-LITERAL 1 "January 5, 2019"
.SH NAME
RS-literal \- indented literal text
.SH DESCRIPTION
+BEGINTEST
+.br
+initial
regular
text
.nf
-literal
-text
+literal text
+before display
.RS
This is a short line.
This is a very long line that would wrap if it weren't in literal context.
.RE
-.PP
literal text
+after display
.fi
+final
regular
text
+.br
+ENDTEST
+.br
+end of file
diff --git a/regress/man/RS/literal.out_ascii b/regress/man/RS/literal.out_ascii
index a96741f3..bc3bd71b 100644
--- a/regress/man/RS/literal.out_ascii
+++ b/regress/man/RS/literal.out_ascii
@@ -6,15 +6,18 @@ NNAAMMEE
RS-literal - indented literal text
DDEESSCCRRIIPPTTIIOONN
- regular text
- literal
- text
+ BEGINTEST
+ initial regular text
+ literal text
+ before display
This is a short line.
This is a very long line that would wrap if it weren't in literal context.
-
literal text
- regular text
+ after display
+ final regular text
+ ENDTEST
+ end of file
-OpenBSD January 5, 2013 RS-LITERAL(1)
+OpenBSD January 5, 2019 RS-LITERAL(1)
diff --git a/regress/man/RS/literal.out_html b/regress/man/RS/literal.out_html
new file mode 100644
index 00000000..9475f407
--- /dev/null
+++ b/regress/man/RS/literal.out_html
@@ -0,0 +1,20 @@
+BEGINTEST
+<br/>
+initial regular text
+<pre>
+literal text
+before display
+</pre>
+<div class="Bd-indent">
+<pre>
+This is a short line.
+This is a very long line that would wrap if it weren't in literal context.
+</pre>
+</div>
+<pre>
+literal text
+after display
+</pre>
+final regular text
+<br/>
+ENDTEST