@@ -12,7 +12,9 @@ import (
1212	"testing" 
1313
1414	auth_model "code.gitea.io/gitea/models/auth" 
15+ 	"code.gitea.io/gitea/models/perm" 
1516	repo_model "code.gitea.io/gitea/models/repo" 
17+ 	"code.gitea.io/gitea/models/unit" 
1618	"code.gitea.io/gitea/models/unittest" 
1719	user_model "code.gitea.io/gitea/models/user" 
1820	"code.gitea.io/gitea/tests" 
@@ -58,9 +60,12 @@ func TestAPIDownloadArchive(t *testing.T) {
5860
5961	link , _  =  url .Parse (fmt .Sprintf ("/api/v1/repos/%s/%s/archive/master" , user2 .Name , repo .Name ))
6062	MakeRequest (t , NewRequest (t , "GET" , link .String ()).AddTokenAuth (token ), http .StatusBadRequest )
63+ 
64+ 	t .Run ("GitHubStyle" , testAPIDownloadArchiveGitHubStyle )
65+ 	t .Run ("PrivateRepo" , testAPIDownloadArchivePrivateRepo )
6166}
6267
63- func  TestAPIDownloadArchive2 (t  * testing.T ) {
68+ func  testAPIDownloadArchiveGitHubStyle (t  * testing.T ) {
6469	defer  tests .PrepareTestEnv (t )()
6570
6671	repo  :=  unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : 1 })
@@ -95,7 +100,13 @@ func TestAPIDownloadArchive2(t *testing.T) {
95100	bs , err  =  io .ReadAll (resp .Body )
96101	assert .NoError (t , err )
97102	assert .Len (t , bs , 382 )
103+ }
98104
99- 	link , _  =  url .Parse (fmt .Sprintf ("/api/v1/repos/%s/%s/archive/master" , user2 .Name , repo .Name ))
100- 	MakeRequest (t , NewRequest (t , "GET" , link .String ()).AddTokenAuth (token ), http .StatusBadRequest )
105+ func  testAPIDownloadArchivePrivateRepo (t  * testing.T ) {
106+ 	_  =  repo_model .UpdateRepositoryColsNoAutoTime (t .Context (), & repo_model.Repository {ID : 1 , IsPrivate : true }, "is_private" )
107+ 	MakeRequest (t , NewRequest (t , "HEAD" , "/api/v1/repos/user2/repo1/archive/master.zip" ), http .StatusNotFound )
108+ 	MakeRequest (t , NewRequest (t , "HEAD" , "/api/v1/repos/user2/repo1/zipball/master" ), http .StatusNotFound )
109+ 	_  =  repo_model .UpdateRepoUnitPublicAccess (t .Context (), & repo_model.RepoUnit {RepoID : 1 , Type : unit .TypeCode , AnonymousAccessMode : perm .AccessModeRead })
110+ 	MakeRequest (t , NewRequest (t , "HEAD" , "/api/v1/repos/user2/repo1/archive/master.zip" ), http .StatusOK )
111+ 	MakeRequest (t , NewRequest (t , "HEAD" , "/api/v1/repos/user2/repo1/zipball/master" ), http .StatusOK )
101112}
0 commit comments