disable gravatar in test (#32529)

When running e2e tests on flaky networks, gravatar can cause a timeout
and test failures. Turn off, and populate avatars on e2e test suite run
to make them reliable.

(cherry picked from commit 9ac74a1a408136455a9e0586fb8e65163048597b)

Conflicts:
	models/fixtures/user.yml
	services/repository/contributors_graph_test.go
  trivial context conflicts
This commit is contained in:
Rowan Bohde 2024-11-20 22:30:48 -06:00 committed by Earl Warren
parent 32a91add34
commit eb0645f185
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00
5 changed files with 99 additions and 98 deletions

View file

@ -1,7 +1,7 @@
- -
id: 1 id: 1
setting_key: 'picture.disable_gravatar' setting_key: 'picture.disable_gravatar'
setting_value: 'false' setting_value: 'true'
version: 1 version: 1
created: 1653533198 created: 1653533198
updated: 1653533198 updated: 1653533198

View file

@ -23,9 +23,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar1 avatar: ""
avatar_email: user1@example.com avatar_email: user1@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -60,8 +60,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar2 avatar: ""
avatar_email: user2@example.com avatar_email: user2@example.com
# cause a random avatar to be generated when referenced for test purposes
use_custom_avatar: false use_custom_avatar: false
num_followers: 2 num_followers: 2
num_following: 1 num_following: 1
@ -97,9 +98,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar3 avatar: ""
avatar_email: org3@example.com avatar_email: org3@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -134,9 +135,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar4 avatar: ""
avatar_email: user4@example.com avatar_email: user4@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 1 num_following: 1
num_stars: 0 num_stars: 0
@ -171,9 +172,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: false allow_create_organization: false
prohibit_login: false prohibit_login: false
avatar: avatar5 avatar: ""
avatar_email: user5@example.com avatar_email: user5@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -208,9 +209,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar6 avatar: ""
avatar_email: org6@example.com avatar_email: org6@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -245,9 +246,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar7 avatar: ""
avatar_email: org7@example.com avatar_email: org7@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -282,9 +283,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar8 avatar: ""
avatar_email: user8@example.com avatar_email: user8@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 1 num_followers: 1
num_following: 1 num_following: 1
num_stars: 0 num_stars: 0
@ -319,9 +320,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar9 avatar: ""
avatar_email: user9@example.com avatar_email: user9@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -357,9 +358,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar10 avatar: ""
avatar_email: user10@example.com avatar_email: user10@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -394,9 +395,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar11 avatar: ""
avatar_email: user11@example.com avatar_email: user11@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -431,9 +432,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar12 avatar: ""
avatar_email: user12@example.com avatar_email: user12@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -468,9 +469,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar13 avatar: ""
avatar_email: user13@example.com avatar_email: user13@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -505,9 +506,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar14 avatar: ""
avatar_email: user13@example.com avatar_email: user13@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -542,9 +543,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar15 avatar: ""
avatar_email: user15@example.com avatar_email: user15@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -579,9 +580,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar16 avatar: ""
avatar_email: user16@example.com avatar_email: user16@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -616,9 +617,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar17 avatar: ""
avatar_email: org17@example.com avatar_email: org17@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -653,9 +654,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar18 avatar: ""
avatar_email: user18@example.com avatar_email: user18@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -690,9 +691,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar19 avatar: ""
avatar_email: org19@example.com avatar_email: org19@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -727,9 +728,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar20 avatar: ""
avatar_email: user20@example.com avatar_email: user20@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -764,9 +765,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar21 avatar: ""
avatar_email: user21@example.com avatar_email: user21@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -801,9 +802,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar22 avatar: ""
avatar_email: limited_org@example.com avatar_email: limited_org@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -838,9 +839,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar23 avatar: ""
avatar_email: privated_org@example.com avatar_email: privated_org@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -875,9 +876,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar24 avatar: ""
avatar_email: user24@example.com avatar_email: user24@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -912,9 +913,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar25 avatar: ""
avatar_email: org25@example.com avatar_email: org25@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -949,9 +950,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar26 avatar: ""
avatar_email: org26@example.com avatar_email: org26@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -986,9 +987,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar27 avatar: ""
avatar_email: user27@example.com avatar_email: user27@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1023,9 +1024,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar28 avatar: ""
avatar_email: user28@example.com avatar_email: user28@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1060,9 +1061,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar29 avatar: ""
avatar_email: user29@example.com avatar_email: user29@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1097,9 +1098,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar29 avatar: ""
avatar_email: user30@example.com avatar_email: user30@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1134,9 +1135,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar31 avatar: ""
avatar_email: user31@example.com avatar_email: user31@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 1 num_following: 1
num_stars: 0 num_stars: 0
@ -1171,9 +1172,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar32 avatar: ""
avatar_email: user30@example.com avatar_email: user30@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1208,9 +1209,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar33 avatar: ""
avatar_email: user33@example.com avatar_email: user33@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 1 num_followers: 1
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1246,7 +1247,7 @@
allow_import_local: false allow_import_local: false
allow_create_organization: false allow_create_organization: false
prohibit_login: false prohibit_login: false
avatar: avatar34 avatar: ""
avatar_email: user34@example.com avatar_email: user34@example.com
use_custom_avatar: true use_custom_avatar: true
num_followers: 0 num_followers: 0
@ -1283,9 +1284,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar35 avatar: ""
avatar_email: private_org35@example.com avatar_email: private_org35@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1320,9 +1321,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar22 avatar: ""
avatar_email: abcde@gitea.com avatar_email: abcde@gitea.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1357,9 +1358,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: true prohibit_login: true
avatar: avatar29 avatar: ""
avatar_email: user37@example.com avatar_email: user37@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1394,9 +1395,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar38 avatar: ""
avatar_email: user38@example.com avatar_email: user38@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1431,9 +1432,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar39 avatar: ""
avatar_email: user39@example.com avatar_email: user39@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1468,9 +1469,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar40 avatar: ""
avatar_email: user40@example.com avatar_email: user40@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0
@ -1505,9 +1506,9 @@
allow_import_local: false allow_import_local: false
allow_create_organization: true allow_create_organization: true
prohibit_login: false prohibit_login: false
avatar: avatar41 avatar: ""
avatar_email: org41@example.com avatar_email: org41@example.com
use_custom_avatar: false use_custom_avatar: true
num_followers: 0 num_followers: 0
num_following: 0 num_following: 0
num_stars: 0 num_stars: 0

View file

@ -4,8 +4,6 @@
package repository package repository
import ( import (
"crypto/md5"
"fmt"
"strconv" "strconv"
"testing" "testing"
"time" "time"
@ -126,15 +124,12 @@ func TestPushCommits_AvatarLink(t *testing.T) {
}, },
} }
setting.GravatarSource = "https://secure.gravatar.com/avatar"
setting.OfflineMode = true
assert.Equal(t, assert.Equal(t,
"/avatars/avatar2?size="+strconv.Itoa(28*setting.Avatar.RenderedSizeFactor), "/avatars/ab53a2911ddf9b4817ac01ddcd3d975f?size="+strconv.Itoa(28*setting.Avatar.RenderedSizeFactor),
pushCommits.AvatarLink(db.DefaultContext, "user2@example.com")) pushCommits.AvatarLink(db.DefaultContext, "user2@example.com"))
assert.Equal(t, assert.Equal(t,
fmt.Sprintf("https://secure.gravatar.com/avatar/%x?d=identicon&s=%d", md5.Sum([]byte("nonexistent@example.com")), 28*setting.Avatar.RenderedSizeFactor), "/assets/img/avatar_default.png",
pushCommits.AvatarLink(db.DefaultContext, "nonexistent@example.com")) pushCommits.AvatarLink(db.DefaultContext, "nonexistent@example.com"))
} }

View file

@ -43,7 +43,7 @@ func TestRepository_ContributorsGraph(t *testing.T) {
dataString, isData := mockCache.Get("key2").(string) dataString, isData := mockCache.Get("key2").(string)
assert.True(t, isData) assert.True(t, isData)
// Verify that JSON is actually stored in the cache. // Verify that JSON is actually stored in the cache.
assert.JSONEq(t, `{"ethantkoenig@gmail.com":{"name":"Ethan Koenig","login":"","avatar_link":"https://secure.gravatar.com/avatar/b42fb195faa8c61b8d88abfefe30e9e3?d=identicon","home_link":"","total_commits":1,"weeks":{"1511654400000":{"week":1511654400000,"additions":3,"deletions":0,"commits":1}}},"jimmy.praet@telenet.be":{"name":"Jimmy Praet","login":"","avatar_link":"https://secure.gravatar.com/avatar/93c49b7c89eb156971d11161c9b52795?d=identicon","home_link":"","total_commits":1,"weeks":{"1624752000000":{"week":1624752000000,"additions":2,"deletions":0,"commits":1}}},"jon@allspice.io":{"name":"Jon","login":"","avatar_link":"https://secure.gravatar.com/avatar/00388ce725e6886f3e07c3733007289b?d=identicon","home_link":"","total_commits":1,"weeks":{"1607817600000":{"week":1607817600000,"additions":10,"deletions":0,"commits":1}}},"total":{"name":"Total","login":"","avatar_link":"","home_link":"","total_commits":3,"weeks":{"1511654400000":{"week":1511654400000,"additions":3,"deletions":0,"commits":1},"1607817600000":{"week":1607817600000,"additions":10,"deletions":0,"commits":1},"1624752000000":{"week":1624752000000,"additions":2,"deletions":0,"commits":1}}}}`, dataString) assert.JSONEq(t, `{"ethantkoenig@gmail.com":{"name":"Ethan Koenig","login":"","avatar_link":"/assets/img/avatar_default.png","home_link":"","total_commits":1,"weeks":{"1511654400000":{"week":1511654400000,"additions":3,"deletions":0,"commits":1}}},"jimmy.praet@telenet.be":{"name":"Jimmy Praet","login":"","avatar_link":"/assets/img/avatar_default.png","home_link":"","total_commits":1,"weeks":{"1624752000000":{"week":1624752000000,"additions":2,"deletions":0,"commits":1}}},"jon@allspice.io":{"name":"Jon","login":"","avatar_link":"/assets/img/avatar_default.png","home_link":"","total_commits":1,"weeks":{"1607817600000":{"week":1607817600000,"additions":10,"deletions":0,"commits":1}}},"total":{"name":"Total","login":"","avatar_link":"","home_link":"","total_commits":3,"weeks":{"1511654400000":{"week":1511654400000,"additions":3,"deletions":0,"commits":1},"1607817600000":{"week":1607817600000,"additions":10,"deletions":0,"commits":1},"1624752000000":{"week":1624752000000,"additions":2,"deletions":0,"commits":1}}}}`, dataString)
var data map[string]*ContributorData var data map[string]*ContributorData
require.NoError(t, json.Unmarshal([]byte(dataString), &data)) require.NoError(t, json.Unmarshal([]byte(dataString), &data))
@ -62,7 +62,7 @@ func TestRepository_ContributorsGraph(t *testing.T) {
assert.EqualValues(t, &ContributorData{ assert.EqualValues(t, &ContributorData{
Name: "Ethan Koenig", Name: "Ethan Koenig",
AvatarLink: "https://secure.gravatar.com/avatar/b42fb195faa8c61b8d88abfefe30e9e3?d=identicon", AvatarLink: "/assets/img/avatar_default.png",
TotalCommits: 1, TotalCommits: 1,
Weeks: map[int64]*WeekData{ Weeks: map[int64]*WeekData{
1511654400000: { 1511654400000: {

View file

@ -5,6 +5,7 @@ package integration
import ( import (
"net/http" "net/http"
"strings"
"testing" "testing"
"code.gitea.io/gitea/modules/setting" "code.gitea.io/gitea/modules/setting"
@ -42,7 +43,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:title": "User Thirty", "og:title": "User Thirty",
"og:url": setting.AppURL + "user30", "og:url": setting.AppURL + "user30",
"og:type": "profile", "og:type": "profile",
"og:image": "https://secure.gravatar.com/avatar/eae1f44b34ff27284cb0792c7601c89c?d=identicon", "og:image": "http://localhost:3003/assets/img/avatar_default.png",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -54,7 +55,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:url": setting.AppURL + "the_34-user.with.all.allowedChars", "og:url": setting.AppURL + "the_34-user.with.all.allowedChars",
"og:description": "some [commonmark](https://commonmark.org/)!", "og:description": "some [commonmark](https://commonmark.org/)!",
"og:type": "profile", "og:type": "profile",
"og:image": setting.AppURL + "avatars/avatar34", "og:image": "http://localhost:3003/assets/img/avatar_default.png",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -66,7 +67,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:url": setting.AppURL + "user2/repo1/issues/1", "og:url": setting.AppURL + "user2/repo1/issues/1",
"og:description": "content for the first issue", "og:description": "content for the first issue",
"og:type": "object", "og:type": "object",
"og:image": "https://secure.gravatar.com/avatar/ab53a2911ddf9b4817ac01ddcd3d975f?d=identicon", "og:image": "http://localhost:3003/avatars/ab53a2911ddf9b4817ac01ddcd3d975f",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -78,7 +79,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:url": setting.AppURL + "user2/repo1/pulls/2", "og:url": setting.AppURL + "user2/repo1/pulls/2",
"og:description": "content for the second issue", "og:description": "content for the second issue",
"og:type": "object", "og:type": "object",
"og:image": "https://secure.gravatar.com/avatar/ab53a2911ddf9b4817ac01ddcd3d975f?d=identicon", "og:image": "http://localhost:3003/avatars/ab53a2911ddf9b4817ac01ddcd3d975f",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -89,7 +90,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:title": "repo49/test/test.txt at master", "og:title": "repo49/test/test.txt at master",
"og:url": setting.AppURL + "/user27/repo49/src/branch/master/test/test.txt", "og:url": setting.AppURL + "/user27/repo49/src/branch/master/test/test.txt",
"og:type": "object", "og:type": "object",
"og:image": "https://secure.gravatar.com/avatar/7095710e927665f1bdd1ced94152f232?d=identicon", "og:image": "http://localhost:3003/assets/img/avatar_default.png",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -100,7 +101,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:title": "Page With Spaced Name", "og:title": "Page With Spaced Name",
"og:url": setting.AppURL + "/user2/repo1/wiki/Page-With-Spaced-Name", "og:url": setting.AppURL + "/user2/repo1/wiki/Page-With-Spaced-Name",
"og:type": "object", "og:type": "object",
"og:image": "https://secure.gravatar.com/avatar/ab53a2911ddf9b4817ac01ddcd3d975f?d=identicon", "og:image": "http://localhost:3003/avatars/ab53a2911ddf9b4817ac01ddcd3d975f",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -111,7 +112,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:title": "repo1", "og:title": "repo1",
"og:url": setting.AppURL + "user2/repo1", "og:url": setting.AppURL + "user2/repo1",
"og:type": "object", "og:type": "object",
"og:image": "https://secure.gravatar.com/avatar/ab53a2911ddf9b4817ac01ddcd3d975f?d=identicon", "og:image": "http://localhost:3003/avatars/ab53a2911ddf9b4817ac01ddcd3d975f",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -123,7 +124,7 @@ func TestOpenGraphProperties(t *testing.T) {
"og:url": setting.AppURL + "user27/repo49", "og:url": setting.AppURL + "user27/repo49",
"og:description": "A wonderful repository with more than just a README.md", "og:description": "A wonderful repository with more than just a README.md",
"og:type": "object", "og:type": "object",
"og:image": "https://secure.gravatar.com/avatar/7095710e927665f1bdd1ced94152f232?d=identicon", "og:image": "http://localhost:3003/assets/img/avatar_default.png",
"og:site_name": siteName, "og:site_name": siteName,
}, },
}, },
@ -141,6 +142,10 @@ func TestOpenGraphProperties(t *testing.T) {
assert.True(t, foundProp) assert.True(t, foundProp)
content, foundContent := selection.Attr("content") content, foundContent := selection.Attr("content")
assert.True(t, foundContent, "opengraph meta tag without a content property") assert.True(t, foundContent, "opengraph meta tag without a content property")
if prop == "og:image" {
content = strings.ReplaceAll(content, "http://localhost:3001", "http://localhost:3003")
content = strings.ReplaceAll(content, "http://localhost:3002", "http://localhost:3003")
}
foundProps[prop] = content foundProps[prop] = content
}) })