summaryrefslogtreecommitdiff
path: root/regress
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@cvs.openbsd.org>2019-01-05 20:00:34 +0000
committerIngo Schwarze <schwarze@cvs.openbsd.org>2019-01-05 20:00:34 +0000
commit6c59684c7b9bf1b0eaf3a3611e81be115436a34f (patch)
treeaabc703c7d935edfff06ec6a031799c8fa70a622 /regress
parent4d5c5ae9564c060289ef65208830e024827a4aaa (diff)
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.
Diffstat (limited to 'regress')
-rw-r--r--regress/usr.bin/mandoc/man/RS/Makefile3
-rw-r--r--regress/usr.bin/mandoc/man/RS/literal.in18
-rw-r--r--regress/usr.bin/mandoc/man/RS/literal.out_ascii15
-rw-r--r--regress/usr.bin/mandoc/man/RS/literal.out_html20
4 files changed, 44 insertions, 12 deletions
diff --git a/regress/usr.bin/mandoc/man/RS/Makefile b/regress/usr.bin/mandoc/man/RS/Makefile
index 65b17367832..34c0029c313 100644
--- a/regress/usr.bin/mandoc/man/RS/Makefile
+++ b/regress/usr.bin/mandoc/man/RS/Makefile
@@ -1,7 +1,8 @@
-# $OpenBSD: Makefile,v 1.12 2017/06/13 19:33:24 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/usr.bin/mandoc/man/RS/literal.in b/regress/usr.bin/mandoc/man/RS/literal.in
index c77e2aec351..3a1a29a3adf 100644
--- a/regress/usr.bin/mandoc/man/RS/literal.in
+++ b/regress/usr.bin/mandoc/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/usr.bin/mandoc/man/RS/literal.out_ascii b/regress/usr.bin/mandoc/man/RS/literal.out_ascii
index a96741f32a7..bc3bd71b41d 100644
--- a/regress/usr.bin/mandoc/man/RS/literal.out_ascii
+++ b/regress/usr.bin/mandoc/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/usr.bin/mandoc/man/RS/literal.out_html b/regress/usr.bin/mandoc/man/RS/literal.out_html
new file mode 100644
index 00000000000..9475f40709e
--- /dev/null
+++ b/regress/usr.bin/mandoc/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