From 159dc74ceba26840e7ee9ab0970591a988931160 Mon Sep 17 00:00:00 2001
From: Gusted <postmaster@gusted.xyz>
Date: Thu, 4 Jan 2024 23:29:28 +0100
Subject: [PATCH] [GITEA] Check for Commit in opengraph

- It's possible that `PageIsDiff` is set but not `Commit` resulting in a
NPE in the template. This can happen when the requested commit doesn't exist.
- Regression of c802c46a9beeaed44d41f50de31a4db146cdd8f7 &
5743d7cb5bcd85c88ad7d128e0162893a074418b
- Added 'hacky' integration test.

(cherry picked from commit 8db2d5e4a76f05b34e4f889e7a00ecd6578d3639)
(cherry picked from commit 8c737a802bcae54195f1bb15bb0b8aca824ef395)
(cherry picked from commit 6b7c7d18dcdcfa135ff2657fbac8ce157eaf0dfa)
(cherry picked from commit a2be4fab27b98b2932486f2b03635b044742f964)
(cherry picked from commit a1125268aca2796d08e02b7a36bfb36172917b38)
---
 tests/integration/repo_test.go | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tests/integration/repo_test.go b/tests/integration/repo_test.go
index 0265e99b7c..15292bbec1 100644
--- a/tests/integration/repo_test.go
+++ b/tests/integration/repo_test.go
@@ -683,7 +683,12 @@ func TestCommitView(t *testing.T) {
 		defer tests.PrintCurrentTest(t)()
 
 		req := NewRequest(t, "GET", "/user2/repo1/commit/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
-		MakeRequest(t, req, http.StatusNotFound)
+		req.SetHeader("Accept", "text/html")
+		resp := MakeRequest(t, req, http.StatusNotFound)
+
+		// Really ensure that 404 is being sent back.
+		doc := NewHTMLParser(t, resp.Body)
+		doc.AssertElement(t, `[aria-label="Page Not Found"]`, true)
 	})
 
 	t.Run("Too short commit ID", func(t *testing.T) {