summaryrefslogtreecommitdiffstats
path: root/integrations/repo_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'integrations/repo_test.go')
-rw-r--r--integrations/repo_test.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/integrations/repo_test.go b/integrations/repo_test.go
index 004156b446..f5ba4d8d82 100644
--- a/integrations/repo_test.go
+++ b/integrations/repo_test.go
@@ -5,8 +5,13 @@
package integrations
import (
+ "fmt"
"net/http"
"testing"
+
+ "code.gitea.io/gitea/modules/setting"
+
+ "github.com/stretchr/testify/assert"
)
func TestViewRepo(t *testing.T) {
@@ -37,3 +42,35 @@ func TestViewRepo3(t *testing.T) {
session := loginUser(t, "user3")
session.MakeRequest(t, req, http.StatusOK)
}
+
+func TestViewRepo1CloneLinkAnonymous(t *testing.T) {
+ prepareTestEnv(t)
+
+ req := NewRequest(t, "GET", "/user2/repo1")
+ resp := MakeRequest(t, req, http.StatusOK)
+
+ htmlDoc := NewHTMLParser(t, resp.Body)
+ link, exists := htmlDoc.doc.Find("#repo-clone-https").Attr("data-link")
+ assert.True(t, exists, "The template has changed")
+ assert.Equal(t, setting.AppURL+"user2/repo1.git", link)
+ _, exists = htmlDoc.doc.Find("#repo-clone-ssh").Attr("data-link")
+ assert.False(t, exists)
+}
+
+func TestViewRepo1CloneLinkAuthorized(t *testing.T) {
+ prepareTestEnv(t)
+
+ session := loginUser(t, "user2")
+
+ req := NewRequest(t, "GET", "/user2/repo1")
+ resp := session.MakeRequest(t, req, http.StatusOK)
+
+ htmlDoc := NewHTMLParser(t, resp.Body)
+ link, exists := htmlDoc.doc.Find("#repo-clone-https").Attr("data-link")
+ assert.True(t, exists, "The template has changed")
+ assert.Equal(t, setting.AppURL+"user2/repo1.git", link)
+ link, exists = htmlDoc.doc.Find("#repo-clone-ssh").Attr("data-link")
+ assert.True(t, exists, "The template has changed")
+ sshURL := fmt.Sprintf("%s@%s:user2/repo1.git", setting.RunUser, setting.SSH.Domain)
+ assert.Equal(t, sshURL, link)
+}