From 3b18a7d8c9608ed0bf13d546018f44e703c62e11 Mon Sep 17 00:00:00 2001 From: Saya Andy Date: Mon, 7 Sep 2026 20:26:15 +0700 Subject: diff: add a flip link to the refs panel The from and to refs of a diff can only be swapped by editing the url by hand. Add a flip link to the refs panel that opens the same diff with the refs swapped, carrying the current head and options. --- tests/t0106-diff.sh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'tests/t0106-diff.sh') diff --git a/tests/t0106-diff.sh b/tests/t0106-diff.sh index e4751e9..1100596 100755 --- a/tests/t0106-diff.sh +++ b/tests/t0106-diff.sh @@ -45,6 +45,15 @@ test_expect_success 'ref picker: auto-submit on change' ' grep "onchange=.this.form.submit()." tmp ' +test_expect_success 'flip link present' ' + grep "tmp ' @@ -77,4 +86,16 @@ test_expect_success 'diff with HEAD and root shows content' ' grep "diffstat" tmp ' +test_expect_success 'flip link swaps explicit refs' ' + cgit_query "url=foo/diff&id=master&id2=HEAD" >tmp && + new=$(git --git-dir="$PWD/repos/foo/.git" rev-parse HEAD) && + grep "/foo/diff/?id=$new&id2=master" tmp +' + +test_expect_success 'flip link omits id for a diff against a root commit' ' + root=$(git --git-dir="$PWD/repos/foo/.git" rev-list --max-parents=0 HEAD) && + cgit_query "url=foo/diff&id=$root" >tmp && + grep "href=./foo/diff/?id2=$root." tmp +' + test_done -- cgit v1.3.1+16