@@ -113,15 +113,27 @@ func TestPullMerge(t *testing.T) {
113113 testRepoFork (t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
114114 testEditFile (t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n " )
115115
116+ repo := unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {OwnerName : "user2" , Name : "repo1" })
117+ assert .Equal (t , 3 , repo .NumPulls )
118+ assert .Equal (t , 3 , repo .NumOpenPulls )
119+
116120 resp := testPullCreate (t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
117121
122+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
123+ assert .Equal (t , 4 , repo .NumPulls )
124+ assert .Equal (t , 4 , repo .NumOpenPulls )
125+
118126 elem := strings .Split (test .RedirectURL (resp ), "/" )
119127 assert .Equal (t , "pulls" , elem [3 ])
120128 testPullMerge (t , session , elem [1 ], elem [2 ], elem [4 ], MergeOptions {
121129 Style : repo_model .MergeStyleMerge ,
122130 DeleteBranch : false ,
123131 })
124132
133+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
134+ assert .Equal (t , 4 , repo .NumPulls )
135+ assert .Equal (t , 3 , repo .NumOpenPulls )
136+
125137 hookTasks , err = webhook .HookTasks (t .Context (), 1 , 1 )
126138 assert .NoError (t , err )
127139 assert .Len (t , hookTasks , hookTasksLenBefore + 1 )
@@ -138,15 +150,27 @@ func TestPullRebase(t *testing.T) {
138150 testRepoFork (t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
139151 testEditFile (t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n " )
140152
153+ repo := unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {OwnerName : "user2" , Name : "repo1" })
154+ assert .Equal (t , 3 , repo .NumPulls )
155+ assert .Equal (t , 3 , repo .NumOpenPulls )
156+
141157 resp := testPullCreate (t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
142158
159+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
160+ assert .Equal (t , 4 , repo .NumPulls )
161+ assert .Equal (t , 4 , repo .NumOpenPulls )
162+
143163 elem := strings .Split (test .RedirectURL (resp ), "/" )
144164 assert .Equal (t , "pulls" , elem [3 ])
145165 testPullMerge (t , session , elem [1 ], elem [2 ], elem [4 ], MergeOptions {
146166 Style : repo_model .MergeStyleRebase ,
147167 DeleteBranch : false ,
148168 })
149169
170+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
171+ assert .Equal (t , 4 , repo .NumPulls )
172+ assert .Equal (t , 3 , repo .NumOpenPulls )
173+
150174 hookTasks , err = webhook .HookTasks (t .Context (), 1 , 1 )
151175 assert .NoError (t , err )
152176 assert .Len (t , hookTasks , hookTasksLenBefore + 1 )
@@ -163,15 +187,27 @@ func TestPullRebaseMerge(t *testing.T) {
163187 testRepoFork (t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
164188 testEditFile (t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n " )
165189
190+ repo := unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {OwnerName : "user2" , Name : "repo1" })
191+ assert .Equal (t , 3 , repo .NumPulls )
192+ assert .Equal (t , 3 , repo .NumOpenPulls )
193+
166194 resp := testPullCreate (t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
167195
196+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
197+ assert .Equal (t , 4 , repo .NumPulls )
198+ assert .Equal (t , 4 , repo .NumOpenPulls )
199+
168200 elem := strings .Split (test .RedirectURL (resp ), "/" )
169201 assert .Equal (t , "pulls" , elem [3 ])
170202 testPullMerge (t , session , elem [1 ], elem [2 ], elem [4 ], MergeOptions {
171203 Style : repo_model .MergeStyleRebaseMerge ,
172204 DeleteBranch : false ,
173205 })
174206
207+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
208+ assert .Equal (t , 4 , repo .NumPulls )
209+ assert .Equal (t , 3 , repo .NumOpenPulls )
210+
175211 hookTasks , err = webhook .HookTasks (t .Context (), 1 , 1 )
176212 assert .NoError (t , err )
177213 assert .Len (t , hookTasks , hookTasksLenBefore + 1 )
@@ -215,6 +251,10 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
215251 testEditFile (t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n " )
216252 testEditFile (t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited!)\n " )
217253
254+ repo := unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {OwnerName : "user2" , Name : "repo1" })
255+ assert .Equal (t , 3 , repo .NumPulls )
256+ assert .Equal (t , 3 , repo .NumOpenPulls )
257+
218258 resp := testPullCreate (t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
219259
220260 repo1 := unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {OwnerName : "user1" , Name : "repo1" })
@@ -224,14 +264,19 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
224264
225265 elem := strings .Split (test .RedirectURL (resp ), "/" )
226266 assert .Equal (t , "pulls" , elem [3 ])
267+
268+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
269+ assert .Equal (t , 4 , repo .NumPulls )
270+ assert .Equal (t , 4 , repo .NumOpenPulls )
271+
227272 testPullMerge (t , session , elem [1 ], elem [2 ], elem [4 ], MergeOptions {
228273 Style : repo_model .MergeStyleSquash ,
229274 DeleteBranch : false ,
230275 HeadCommitID : headBranch .CommitID ,
231276 })
232- baseRepo : = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {OwnerName : "user2" , Name : "repo1" })
233- assert .Equal (t , 4 , baseRepo .NumPulls )
234- assert .Equal (t , 3 , baseRepo .NumOpenPulls )
277+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo . ID })
278+ assert .Equal (t , 4 , repo .NumPulls )
279+ assert .Equal (t , 3 , repo .NumOpenPulls )
235280
236281 hookTasks , err = webhook .HookTasks (t .Context (), 1 , 1 )
237282 assert .NoError (t , err )
@@ -245,15 +290,28 @@ func TestPullCleanUpAfterMerge(t *testing.T) {
245290 testRepoFork (t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
246291 testEditFileToNewBranch (t , session , "user1" , "repo1" , "master" , "feature/test" , "README.md" , "Hello, World (Edited - TestPullCleanUpAfterMerge)\n " )
247292
293+ repo := unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {OwnerName : "user2" , Name : "repo1" })
294+ assert .Equal (t , 3 , repo .NumPulls )
295+ assert .Equal (t , 3 , repo .NumOpenPulls )
296+
248297 resp := testPullCreate (t , session , "user1" , "repo1" , false , "master" , "feature/test" , "This is a pull title" )
249298
250299 elem := strings .Split (test .RedirectURL (resp ), "/" )
251300 assert .Equal (t , "pulls" , elem [3 ])
301+
302+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
303+ assert .Equal (t , 4 , repo .NumPulls )
304+ assert .Equal (t , 4 , repo .NumOpenPulls )
305+
252306 testPullMerge (t , session , elem [1 ], elem [2 ], elem [4 ], MergeOptions {
253307 Style : repo_model .MergeStyleMerge ,
254308 DeleteBranch : false ,
255309 })
256310
311+ repo = unittest .AssertExistsAndLoadBean (t , & repo_model.Repository {ID : repo .ID })
312+ assert .Equal (t , 4 , repo .NumPulls )
313+ assert .Equal (t , 3 , repo .NumOpenPulls )
314+
257315 // Check PR branch deletion
258316 resp = testPullCleanUp (t , session , elem [1 ], elem [2 ], elem [4 ])
259317 respJSON := struct {
0 commit comments