From b57a29fd9dc49364890046be8df07eb77fa04155 Mon Sep 17 00:00:00 2001 From: Bryce Kwon Date: Fri, 16 Oct 2026 22:17:13 -1000 Subject: Ship the example tracker links commented out An unedited copy sent every #123, Closes: and Bug: mark to bugs.example.com, a link that is wrong for every site. --- tests/extensions/test-link-commits.lua | 13 ++++++++++--- tests/extensions/test-link-trailers.lua | 16 ++++++++++++---- tests/t0503-link-commits.sh | 13 +++++++------ tests/t0506-link-trailers.sh | 12 ++++++------ 4 files changed, 35 insertions(+), 19 deletions(-) (limited to 'tests') diff --git a/tests/extensions/test-link-commits.lua b/tests/extensions/test-link-commits.lua index 07b2fdb..fdd1787 100644 --- a/tests/extensions/test-link-commits.lua +++ b/tests/extensions/test-link-commits.lua @@ -1,7 +1,8 @@ -- Unit checks for custom/extensions/link-commits.lua, run under a standalone -- Lua by t0503-link-commits.sh with the script path as the argument. The --- shipped configuration links bare object names to ./?id= and issue marks --- like #123 to bugs.example.com, and everything here checks that shape, the +-- shipped configuration links bare object names to ./?id= and leaves issue +-- marks as text. The rest runs with the commented-out issue rule switched on, +-- linking marks like #123 to bugs.example.com, and checks that shape, the -- length bounds and frontier on hash recognition, and the rule that no run -- of text is ever wrapped twice. @@ -14,7 +15,13 @@ local function render(text) return h.run({}, { text }) end -local out, ret = render("see #123 for details") +local out, ret = render("see #123 near deadbee") +h.equals("an unedited copy leaves issue marks as text", out, + "see #123 near deadbee") + +h.load_with(arg[1], { { "-- { pattern = \"#(%d+)\"", "{ pattern = \"#(%d+)\"" } }) + +out, ret = render("see #123 for details") h.contains("issue mark becomes a link", out, "#123") h.contains("text around the link survives", out, "see ") h.contains("text after the link survives", out, " for details") diff --git a/tests/extensions/test-link-trailers.lua b/tests/extensions/test-link-trailers.lua index c879340..7aed9d2 100644 --- a/tests/extensions/test-link-trailers.lua +++ b/tests/extensions/test-link-trailers.lua @@ -1,9 +1,10 @@ -- Unit checks for custom/extensions/link-trailers.lua, run under a standalone -- Lua by t0506-link-trailers.sh with the script path as the argument. The --- shipped configuration links Fixes and Reverts object names to ./?id=, --- Closes and Bug marks to bugs.example.com and a bare URL to itself, and --- everything here checks that shape, the key matching and the values that --- must pass through untouched. +-- shipped configuration links Fixes and Reverts object names to ./?id= and a +-- bare URL to itself, and leaves Closes and Bug marks as text. The rest runs +-- with the commented-out tracker rules switched on, linking those marks to +-- bugs.example.com, and checks that shape, the key matching and the values +-- that must pass through untouched. local test_directory = arg[0]:match("^(.*)/") or "." local h = dofile(test_directory .. "/harness.lua") @@ -14,6 +15,13 @@ local function render(key, text) return h.run({ key, "commit" }, { text }) end +h.equals("an unedited copy leaves a Closes mark as text", render("Closes", "#45"), "#45") + +h.load_with(arg[1], { + { "-- { key = \"Closes\"", "{ key = \"Closes\"" }, + { "-- { key = \"Bug\"", "{ key = \"Bug\"" }, +}) + local out, ret = render("Fixes", "1234567 (\"plain commit\")") h.contains("a Fixes object name links to its commit", out, "1234567 (\"plain commit\")") diff --git a/tests/t0503-link-commits.sh b/tests/t0503-link-commits.sh index d977517..fc7d618 100755 --- a/tests/t0503-link-commits.sh +++ b/tests/t0503-link-commits.sh @@ -1,10 +1,10 @@ #!/bin/sh # Checks link-commits.lua, the shipped commit-filter, whose configuration as -# shipped links bare object names to ./?id= and issue marks like #123 to -# bugs.example.com. The unit checks cover the matching rules under every -# suitable standalone Lua, and a commit whose message carries one of each is -# then rendered through cgit itself. +# shipped links bare object names to ./?id= and leaves issue marks like #123 +# as text until a tracker is set up. The unit checks cover the matching rules +# under every suitable standalone Lua, and a commit whose message carries one +# of each is then rendered through cgit itself. test_description='Check the shipped link-commits extension' CGIT_TEST_NO_CREATE_REPOS=YesPlease @@ -46,9 +46,10 @@ test_expect_success 'point cgit at it through the commit filter' ' EOF ' -test_expect_success CGIT_LUA 'the issue mark links out on the commit page' ' +test_expect_success CGIT_LUA 'the issue mark stays text on the commit page' ' cgit_url "linky/commit/" >tmp && - grep "bugs.example.com/?bug=123.>#123" tmp + grep "fix #123 near" tmp && + ! grep "bugs.example.com" tmp ' test_expect_success CGIT_LUA 'the object name links to its own page' ' diff --git a/tests/t0506-link-trailers.sh b/tests/t0506-link-trailers.sh index 7ce9f53..39e22e7 100755 --- a/tests/t0506-link-trailers.sh +++ b/tests/t0506-link-trailers.sh @@ -1,10 +1,10 @@ #!/bin/sh # Checks link-trailers.lua, the shipped trailer-filter, whose configuration as -# shipped links Fixes and Reverts object names to ./?id=, Closes and Bug marks -# to bugs.example.com and a bare URL to itself. The unit checks cover the rules -# under every suitable standalone Lua, and a commit carrying one of each is -# then rendered through cgit itself. +# shipped links Fixes and Reverts object names to ./?id= and a bare URL to +# itself, and leaves Closes and Bug marks as text until a tracker is set up. +# The unit checks cover the rules under every suitable standalone Lua, and a +# commit carrying one of each is then rendered through cgit itself. test_description='Check the shipped link-trailers extension' CGIT_TEST_NO_CREATE_REPOS=YesPlease @@ -62,8 +62,8 @@ test_expect_success CGIT_LUA 'the bare URL links to itself' ' grep "https://example.com/?a=1&b=2" tmp ' -test_expect_success CGIT_LUA 'the Closes mark links out' ' - grep "bugs.example.com/?bug=45.>#45" tmp +test_expect_success CGIT_LUA 'the Closes mark stays text' ' + grep "Closes#45" tmp ' test_done -- cgit