gbranden pushed a commit to branch master
in repository groff.

commit 668bd44295ef051df7cc98e05c02cd7f22310dcf
Author: G. Branden Robinson <[email protected]>
AuthorDate: Thu Oct 1 16:43:30 2026 -0500

    [mm]: Regression-test Savannah #68727.
    
    * contrib/mm/tests/artifacts/use-reference.mm: New file aids test.
    
    * contrib/mm/tests/lists-indent-correctly-with-scaling-unit.sh: Do it.
    
    * contrib/mm/mm.am: Add new artifact to `EXTRA_DIST` macro.
      (mm_TESTS): Run test.
    
    Test fails at this commit.
---
 contrib/mm/ChangeLog                        |  9 ++++
 contrib/mm/mm.am                            |  4 +-
 contrib/mm/tests/GETST-works.sh             | 74 +++++++++++++++++++++++++++++
 contrib/mm/tests/artifacts/use-reference.mm | 59 +++++++++++++++++++++++
 4 files changed, 145 insertions(+), 1 deletion(-)

diff --git a/contrib/mm/ChangeLog b/contrib/mm/ChangeLog
index dc3c8df95..f45a68ec8 100644
--- a/contrib/mm/ChangeLog
+++ b/contrib/mm/ChangeLog
@@ -1,3 +1,12 @@
+2026-10-01  G. Branden Robinson <[email protected]>
+
+       Regression-test Savannah #68727.
+
+       * tests/artifacts/use-reference.mm: New file aids test.
+       * tests/lists-indent-correctly-with-scaling-unit.sh: Do it.
+       * mm.am: Add new artifact to `EXTRA_DIST` macro.
+         (mm_TESTS): Run test.
+
 2026-10-02  G. Branden Robinson <[email protected]>
 
        * mmroff.pl: Throw fatal error if `close()` returns abnormally,
diff --git a/contrib/mm/mm.am b/contrib/mm/mm.am
index 7da4cf3b0..9d96bc1f9 100644
--- a/contrib/mm/mm.am
+++ b/contrib/mm/mm.am
@@ -67,6 +67,7 @@ EXTRA_DIST += \
 
 mm_TESTS = \
   contrib/mm/tests/Captc-string-translates.sh \
+  contrib/mm/tests/GETST-works.sh \
   contrib/mm/tests/IA-IE-WA-WE-allow-escape-sequences.sh \
   contrib/mm/tests/LB-mark-or-format-argument-works.sh \
   contrib/mm/tests/LT-BL-spaces-before-date.sh \
@@ -115,7 +116,8 @@ EXTRA_DIST += \
   contrib/mm/tests/artifacts/memorandum.3 \
   contrib/mm/tests/artifacts/memorandum.4 \
   contrib/mm/tests/artifacts/memorandum.5 \
-  contrib/mm/tests/artifacts/memorandum.custom
+  contrib/mm/tests/artifacts/memorandum.custom \
+  contrib/mm/tests/artifacts/use-reference.mm
 
 mmroff: $(mm_srcdir)/mmroff.pl
        $(AM_V_GEN)$(SED) \
diff --git a/contrib/mm/tests/GETST-works.sh b/contrib/mm/tests/GETST-works.sh
new file mode 100755
index 000000000..df0b18a64
--- /dev/null
+++ b/contrib/mm/tests/GETST-works.sh
@@ -0,0 +1,74 @@
+#!/bin/sh
+#
+# Copyright 2026 Free Software Foundation, Inc.
+#
+# This file is part of mm, a reimplementation of the Documenter's
+# Workbench (DWB) troff memorandum macro package for use with GNU troff.
+#
+# groff is free software; you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your
+# option) any later version.
+#
+# groff is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+mmroff="${abs_top_builddir:-.}/mmroff"
+fontdir="${abs_top_builddir:-.}/font"
+src="${abs_top_srcdir:-..}"
+
+fail=
+
+wail () {
+    echo ...FAILED >&2
+    fail=YES
+}
+
+# Locate directory containing our test artifacts.
+artifacts_dir=
+
+for buildroot in . .. ../..
+do
+    d=$buildroot/contrib/mm/tests/artifacts
+    if [ -d "$d" ]
+    then
+        artifacts_dir=$d
+        break
+    fi
+done
+
+# If we can't find it, we can't test.
+if [ -z "$artifacts_dir" ]
+then
+    echo "cannot find test artifact directory; skipping" >&2
+    exit 77 # skip
+fi
+
+sandbox_dir=$(mktemp -d)
+if [ $? -ne 0 ]
+then
+    echo "cannot create temporary directory; skipping" >&2
+    exit 77 # skip
+fi
+
+# Regression-test Savannah #68727.
+
+mmdir=$src/contrib/mm/
+
+GROFF_BIN_PATH=. GROFF_FONT_PATH="$fontdir":"$src"/font \
+    GROFF_TMAC_PATH="$src"/contrib/mm:"$src"/tmac \
+    "$mmroff" -t -T utf8 -P -cbou "$artifacts_dir"/use-reference.mm \
+    | grep -q 'Use Table 1 to' || wail
+
+# Nuke the reference file to keep `make distclean` happy.  Honoring a
+# file name argument to `INITR` with slashes in it in a way that we can
+# test looks like a bit of a lift.  :-\
+rm -f reference.qrf
+test -z "$fail" || exit 1
+
+# vim:set autoindent expandtab shiftwidth=4 tabstop=4 textwidth=72:
diff --git a/contrib/mm/tests/artifacts/use-reference.mm 
b/contrib/mm/tests/artifacts/use-reference.mm
new file mode 100644
index 000000000..6818b601a
--- /dev/null
+++ b/contrib/mm/tests/artifacts/use-reference.mm
@@ -0,0 +1,59 @@
+.SA 0
+.de Lorem
+.P
+Sed ut perspiciatis, unde omnis iste natus error sit voluptatem
+accusantium doloremque laudantium, totam rem aperiam eaque ipsa, quae ab
+illo inventore veritatis et quasi architecto beatae vitae dicta sunt,
+explicabo.  Nemo enim ipsam voluptatem, quia voluptas sit, aspernatur
+aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione
+voluptatem sequi nesciunt, neque porro quisquam est, qui dolorem ipsum,
+quia dolor sit amet consectetur adipiscivelit, sed quia non-numquam eius
+modi tempora incidunt, ut labore et dolore magnam aliquam quaerat
+voluptatem.  Ut enim ad minima veniam, quis nostrum exercitationem ullam
+corporis suscipitlaboriosam, nisi ut aliquid ex ea commodi consequatur?
+Quis autem vel eum iure reprehenderit, qui inea voluptate velit esse,
+quam nihil molestiae consequatur, vel illum, qui dolorem eum fugiat, quo
+voluptas nulla pariatur?  At vero eos et accusamus et iusto odio
+dignissimos ducimus, qui blanditiis praesentium voluptatum deleniti
+atque corrupti, quos dolores et quas molestias excepturi sint, obcaecati
+cupiditate non-provident, similique sunt in culpa, qui officia deserunt
+mollitia animi, id est laborum et dolorum fuga.  Et harum quidem rerum
+facilis est et expedita distinctio.  Nam libero tempore, cum soluta
+nobis est eligendi optio, cumque nihil impedit, quo minus id, quod
+maxime placeat, facere possimus, omnis voluptas assumenda est, omnis
+dolor repellendus.  Temporibus autem quibusdam et aut officiis debitis
+aut rerum necessitatibus saepe eveniet, ut et voluptates repudiandae
+sint et molestiae non-recusandae.  Itaque earum rerum hic tenetur a
+sapiente delectus, ut aut reiciendis voluptatibus maiores alias
+consequatur aut perferendis doloribus asperiores repellat.
+..
+.INITR reference
+.P
+The
+.I groff
+typesetting software project has increased its release cadence of late.
+.TS
+allbox center tab(@);
+Rb Lb
+R  L .
+Version@Date
+1.22.4@23 December 2018
+1.23.0@5 July 2023
+1.24.0@28 February 2026
+1.24.1@14 March 2026
+1.24.2@28 September 2026
+.TE
+.TB "Recent \f[I]groff\f[] Releases" "" "" "rel"
+.P
+As of this writing,
+its developers still hope to get 1.25.0 out before 2027.
+.Lorem
+.Lorem
+.P
+.I Exercise:
+Use Table
+.GETST rel
+.nop \" Put word space on output since GETST doesn't.
+to compute the mean duration between
+.I groff
+releases.

_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit

Reply via email to