@@ -10,6 +10,7 @@ import (
10
10
11
11
"code.gitea.io/gitea/models/db"
12
12
"code.gitea.io/gitea/models/unittest"
13
+ "code.gitea.io/gitea/modules/git"
13
14
"code.gitea.io/gitea/services/contexttest"
14
15
15
16
_ "code.gitea.io/gitea/models/actions"
@@ -31,47 +32,47 @@ func TestArchive_Basic(t *testing.T) {
31
32
contexttest .LoadGitRepo (t , ctx )
32
33
defer ctx .Repo .GitRepo .Close ()
33
34
34
- bogusReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit + ".zip" )
35
+ bogusReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit , git . ZIP )
35
36
assert .NoError (t , err )
36
37
assert .NotNil (t , bogusReq )
37
38
assert .EqualValues (t , firstCommit + ".zip" , bogusReq .GetArchiveName ())
38
39
39
40
// Check a series of bogus requests.
40
41
// Step 1, valid commit with a bad extension.
41
- bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit + ".dilbert" )
42
+ bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit , 100 )
42
43
assert .Error (t , err )
43
44
assert .Nil (t , bogusReq )
44
45
45
46
// Step 2, missing commit.
46
- bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "dbffff.zip" )
47
+ bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "dbffff" , git . ZIP )
47
48
assert .Error (t , err )
48
49
assert .Nil (t , bogusReq )
49
50
50
51
// Step 3, doesn't look like branch/tag/commit.
51
- bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "db.zip" )
52
+ bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "db" , git . ZIP )
52
53
assert .Error (t , err )
53
54
assert .Nil (t , bogusReq )
54
55
55
- bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "master.zip" )
56
+ bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "master" , git . ZIP )
56
57
assert .NoError (t , err )
57
58
assert .NotNil (t , bogusReq )
58
59
assert .EqualValues (t , "master.zip" , bogusReq .GetArchiveName ())
59
60
60
- bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "test/archive.zip" )
61
+ bogusReq , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , "test/archive" , git . ZIP )
61
62
assert .NoError (t , err )
62
63
assert .NotNil (t , bogusReq )
63
64
assert .EqualValues (t , "test-archive.zip" , bogusReq .GetArchiveName ())
64
65
65
66
// Now two valid requests, firstCommit with valid extensions.
66
- zipReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit + ".zip" )
67
+ zipReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit , git . ZIP )
67
68
assert .NoError (t , err )
68
69
assert .NotNil (t , zipReq )
69
70
70
- tgzReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit + ".tar.gz" )
71
+ tgzReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit , git . TARGZ )
71
72
assert .NoError (t , err )
72
73
assert .NotNil (t , tgzReq )
73
74
74
- secondReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , secondCommit + ".zip" )
75
+ secondReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , secondCommit , git . ZIP )
75
76
assert .NoError (t , err )
76
77
assert .NotNil (t , secondReq )
77
78
@@ -91,7 +92,7 @@ func TestArchive_Basic(t *testing.T) {
91
92
// Sleep two seconds to make sure the queue doesn't change.
92
93
time .Sleep (2 * time .Second )
93
94
94
- zipReq2 , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit + ".zip" )
95
+ zipReq2 , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit , git . ZIP )
95
96
assert .NoError (t , err )
96
97
// This zipReq should match what's sitting in the queue, as we haven't
97
98
// let it release yet. From the consumer's point of view, this looks like
@@ -106,12 +107,12 @@ func TestArchive_Basic(t *testing.T) {
106
107
// Now we'll submit a request and TimedWaitForCompletion twice, before and
107
108
// after we release it. We should trigger both the timeout and non-timeout
108
109
// cases.
109
- timedReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , secondCommit + ".tar.gz" )
110
+ timedReq , err := NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , secondCommit , git . TARGZ )
110
111
assert .NoError (t , err )
111
112
assert .NotNil (t , timedReq )
112
113
doArchive (db .DefaultContext , timedReq )
113
114
114
- zipReq2 , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit + ".zip" )
115
+ zipReq2 , err = NewRequest (ctx .Repo .Repository .ID , ctx .Repo .GitRepo , firstCommit , git . ZIP )
115
116
assert .NoError (t , err )
116
117
// Now, we're guaranteed to have released the original zipReq from the queue.
117
118
// Ensure that we don't get handed back the released entry somehow, but they
0 commit comments