mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 05:18:25 +00:00 
			
		
		
		
	TestRepository_GetTag intermittently panics due to an NPE (#18043)
There are repeated panics in tests due to TestRepository_GetTag failing to run properly. This happens when we attempt to reset the internal repo for a tag which has failed to load. The problem is - the panic that this is causing is preventing us from finding what the real error is. This PR simply moves the failure out so we have a chance to see what really is failing. Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
		@@ -50,9 +50,12 @@ func TestRepository_GetTag(t *testing.T) {
 | 
				
			|||||||
	aTagID, _ := bareRepo1.GetTagID(aTagName)
 | 
						aTagID, _ := bareRepo1.GetTagID(aTagName)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	lTag, err := bareRepo1.GetTag(lTagName)
 | 
						lTag, err := bareRepo1.GetTag(lTagName)
 | 
				
			||||||
	lTag.repo = nil
 | 
					 | 
				
			||||||
	assert.NoError(t, err)
 | 
						assert.NoError(t, err)
 | 
				
			||||||
	assert.NotNil(t, lTag)
 | 
						assert.NotNil(t, lTag)
 | 
				
			||||||
 | 
						if lTag == nil {
 | 
				
			||||||
 | 
							assert.FailNow(t, "nil lTag: %s", lTagName)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						lTag.repo = nil
 | 
				
			||||||
	assert.EqualValues(t, lTagName, lTag.Name)
 | 
						assert.EqualValues(t, lTagName, lTag.Name)
 | 
				
			||||||
	assert.EqualValues(t, lTagCommitID, lTag.ID.String())
 | 
						assert.EqualValues(t, lTagCommitID, lTag.ID.String())
 | 
				
			||||||
	assert.EqualValues(t, lTagCommitID, lTag.Object.String())
 | 
						assert.EqualValues(t, lTagCommitID, lTag.Object.String())
 | 
				
			||||||
@@ -61,6 +64,9 @@ func TestRepository_GetTag(t *testing.T) {
 | 
				
			|||||||
	aTag, err := bareRepo1.GetTag(aTagName)
 | 
						aTag, err := bareRepo1.GetTag(aTagName)
 | 
				
			||||||
	assert.NoError(t, err)
 | 
						assert.NoError(t, err)
 | 
				
			||||||
	assert.NotNil(t, aTag)
 | 
						assert.NotNil(t, aTag)
 | 
				
			||||||
 | 
						if aTag == nil {
 | 
				
			||||||
 | 
							assert.FailNow(t, "nil aTag: %s", aTagName)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	assert.EqualValues(t, aTagName, aTag.Name)
 | 
						assert.EqualValues(t, aTagName, aTag.Name)
 | 
				
			||||||
	assert.EqualValues(t, aTagID, aTag.ID.String())
 | 
						assert.EqualValues(t, aTagID, aTag.ID.String())
 | 
				
			||||||
	assert.NotEqual(t, aTagID, aTag.Object.String())
 | 
						assert.NotEqual(t, aTagID, aTag.Object.String())
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user