Skip to content

Commit 3cdaf8b

Browse files
committed
Add integration test
1 parent 75ffae4 commit 3cdaf8b

10 files changed

+27
-8
lines changed

tests/gitea-repositories-meta/user27/template1.git/objects/2a/83b349fa234131fc5db6f2a0498d3f4d3d6038

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
x��AJ�0�a�9�\@Ij2��C�w�"��h�i���޷q���~�{_ � ����+c�)M���* rȉSD&��M��*�l�pm*��5fE_�P�8���D�QC�ɕa�o?��+\>���f۸����O��HH9G"x��{w��;��8
2+
i�s�������0��9�/�IH
192 Bytes
Binary file not shown.
53 Bytes
Binary file not shown.
28 Bytes
Binary file not shown.
106 Bytes
Binary file not shown.
90 Bytes
Binary file not shown.
50 Bytes
Binary file not shown.
15 Bytes
Binary file not shown.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
aacbdfe9e1c4b47f60abe81849045fa4e96f1d75
1+
2a83b349fa234131fc5db6f2a0498d3f4d3d6038

tests/integration/repo_generate_test.go

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"fmt"
88
"net/http"
99
"net/http/httptest"
10+
"strings"
1011
"testing"
1112

1213
"code.gitea.io/gitea/models/unittest"
@@ -16,7 +17,7 @@ import (
1617
"github.com/stretchr/testify/assert"
1718
)
1819

19-
func testRepoGenerate(t *testing.T, session *TestSession, templateOwnerName, templateRepoName, generateOwnerName, generateRepoName string) *httptest.ResponseRecorder {
20+
func testRepoGenerate(t *testing.T, session *TestSession, templateID, templateOwnerName, templateRepoName, generateOwnerName, generateRepoName string) *httptest.ResponseRecorder {
2021
generateOwner := unittest.AssertExistsAndLoadBean(t, &user_model.User{Name: generateOwnerName})
2122

2223
// Step0: check the existence of the generated repo
@@ -41,28 +42,44 @@ func testRepoGenerate(t *testing.T, session *TestSession, templateOwnerName, tem
4142
_, exists = htmlDoc.doc.Find(fmt.Sprintf(".owner.dropdown .item[data-value=\"%d\"]", generateOwner.ID)).Attr("data-value")
4243
assert.True(t, exists, fmt.Sprintf("Generate owner '%s' is not present in select box", generateOwnerName))
4344
req = NewRequestWithValues(t, "POST", link, map[string]string{
44-
"_csrf": htmlDoc.GetCSRF(),
45-
"uid": fmt.Sprintf("%d", generateOwner.ID),
46-
"repo_name": generateRepoName,
47-
"git_content": "true",
45+
"_csrf": htmlDoc.GetCSRF(),
46+
"uid": fmt.Sprintf("%d", generateOwner.ID),
47+
"repo_name": generateRepoName,
48+
"repo_template": templateID,
49+
"git_content": "true",
4850
})
4951
session.MakeRequest(t, req, http.StatusSeeOther)
5052

5153
// Step4: check the existence of the generated repo
5254
req = NewRequestf(t, "GET", "/%s/%s", generateOwnerName, generateRepoName)
55+
session.MakeRequest(t, req, http.StatusOK)
56+
57+
// Step5: check substituted values in Readme
58+
req = NewRequestf(t, "GET", "/%s/%s/raw/branch/master/README.md", generateOwnerName, generateRepoName)
59+
resp = session.MakeRequest(t, req, http.StatusOK)
60+
body := fmt.Sprintf(`# %s Readme
61+
Owner: %s
62+
Link: /%s/%s
63+
Clone URL: http://localhost:3003/%s/%s.git`,
64+
generateRepoName, strings.ToUpper(generateOwnerName), generateOwnerName, generateRepoName, generateOwnerName, generateRepoName)
65+
assert.Equal(t, body, resp.Body.String())
66+
67+
// Step6: check substituted values in substituted file path ${REPO_NAME}
68+
req = NewRequestf(t, "GET", "/%s/%s/raw/branch/master/%s.log", generateOwnerName, generateRepoName, generateRepoName)
5369
resp = session.MakeRequest(t, req, http.StatusOK)
70+
assert.Equal(t, generateRepoName, resp.Body.String())
5471

5572
return resp
5673
}
5774

5875
func TestRepoGenerate(t *testing.T) {
5976
defer tests.PrepareTestEnv(t)()
6077
session := loginUser(t, "user1")
61-
testRepoGenerate(t, session, "user27", "template1", "user1", "generated1")
78+
testRepoGenerate(t, session, "44", "user27", "template1", "user1", "generated1")
6279
}
6380

6481
func TestRepoGenerateToOrg(t *testing.T) {
6582
defer tests.PrepareTestEnv(t)()
6683
session := loginUser(t, "user2")
67-
testRepoGenerate(t, session, "user27", "template1", "user2", "generated2")
84+
testRepoGenerate(t, session, "44", "user27", "template1", "user2", "generated2")
6885
}

0 commit comments

Comments
 (0)