Add testifylint to lint checks (#4535)

go-require lint is ignored for now

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4535
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: TheFox0x7 <thefox0x7@gmail.com>
Co-committed-by: TheFox0x7 <thefox0x7@gmail.com>
This commit is contained in:
TheFox0x7 2024-07-30 19:41:10 +00:00 committed by Earl Warren
parent 94933470cd
commit 4de909747b
504 changed files with 5028 additions and 4680 deletions

View file

@ -17,18 +17,19 @@ import (
"code.gitea.io/gitea/services/contexttest"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestHandlePullRequestMerging(t *testing.T) {
assert.NoError(t, unittest.PrepareTestDatabase())
require.NoError(t, unittest.PrepareTestDatabase())
pr, err := issues_model.GetUnmergedPullRequest(db.DefaultContext, 1, 1, "branch2", "master", issues_model.PullRequestFlowGithub)
assert.NoError(t, err)
assert.NoError(t, pr.LoadBaseRepo(db.DefaultContext))
require.NoError(t, err)
require.NoError(t, pr.LoadBaseRepo(db.DefaultContext))
user1 := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 1})
err = pull_model.ScheduleAutoMerge(db.DefaultContext, user1, pr.ID, repo_model.MergeStyleSquash, "squash merge a pr")
assert.NoError(t, err)
require.NoError(t, err)
autoMerge := unittest.AssertExistsAndLoadBean(t, &pull_model.AutoMerge{PullID: pr.ID})
@ -39,9 +40,9 @@ func TestHandlePullRequestMerging(t *testing.T) {
}, pr.BaseRepo.OwnerName, pr.BaseRepo.Name, []*repo_module.PushUpdateOptions{
{NewCommitID: "01234567"},
})
assert.Equal(t, 0, len(resp.Body.String()))
assert.Empty(t, resp.Body.String())
pr, err = issues_model.GetPullRequestByID(db.DefaultContext, pr.ID)
assert.NoError(t, err)
require.NoError(t, err)
assert.True(t, pr.HasMerged)
assert.EqualValues(t, "01234567", pr.MergedCommitID)

View file

@ -10,7 +10,7 @@ import (
"code.gitea.io/gitea/models/unittest"
"code.gitea.io/gitea/modules/git"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
var testReposDir = "tests/repos/"
@ -20,10 +20,10 @@ func TestVerifyCommits(t *testing.T) {
gitRepo, err := git.OpenRepository(context.Background(), testReposDir+"repo1_hook_verification")
defer gitRepo.Close()
assert.NoError(t, err)
require.NoError(t, err)
objectFormat, err := gitRepo.GetObjectFormat()
assert.NoError(t, err)
require.NoError(t, err)
testCases := []struct {
base, head string
@ -38,9 +38,9 @@ func TestVerifyCommits(t *testing.T) {
for _, tc := range testCases {
err = verifyCommits(tc.base, tc.head, gitRepo, nil)
if tc.verified {
assert.NoError(t, err)
require.NoError(t, err)
} else {
assert.Error(t, err)
require.Error(t, err)
}
}
}

View file

@ -15,6 +15,7 @@ import (
"code.gitea.io/gitea/services/forms"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestNewUserPost_MustChangePassword(t *testing.T) {
@ -48,7 +49,7 @@ func TestNewUserPost_MustChangePassword(t *testing.T) {
u, err := user_model.GetUserByName(ctx, username)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, username, u.Name)
assert.Equal(t, email, u.Email)
assert.True(t, u.MustChangePassword)
@ -85,7 +86,7 @@ func TestNewUserPost_MustChangePasswordFalse(t *testing.T) {
u, err := user_model.GetUserByName(ctx, username)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, username, u.Name)
assert.Equal(t, email, u.Email)
assert.False(t, u.MustChangePassword)
@ -152,7 +153,7 @@ func TestNewUserPost_VisibilityDefaultPublic(t *testing.T) {
u, err := user_model.GetUserByName(ctx, username)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, username, u.Name)
assert.Equal(t, email, u.Email)
// As default user visibility
@ -191,7 +192,7 @@ func TestNewUserPost_VisibilityPrivate(t *testing.T) {
u, err := user_model.GetUserByName(ctx, username)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, username, u.Name)
assert.Equal(t, email, u.Email)
// As default user visibility

View file

@ -15,11 +15,12 @@ import (
"github.com/golang-jwt/jwt/v5"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func createAndParseToken(t *testing.T, grant *auth.OAuth2Grant) *oauth2.OIDCToken {
signingKey, err := oauth2.CreateJWTSigningKey("HS256", make([]byte, 32))
assert.NoError(t, err)
require.NoError(t, err)
assert.NotNil(t, signingKey)
response, terr := newAccessTokenResponse(db.DefaultContext, grant, signingKey, signingKey)
@ -31,7 +32,7 @@ func createAndParseToken(t *testing.T, grant *auth.OAuth2Grant) *oauth2.OIDCToke
assert.Equal(t, signingKey.SigningMethod().Alg(), token.Method.Alg())
return signingKey.VerifyKey(), nil
})
assert.NoError(t, err)
require.NoError(t, err)
assert.True(t, parsedToken.Valid)
oidcToken, ok := parsedToken.Claims.(*oauth2.OIDCToken)
@ -42,10 +43,10 @@ func createAndParseToken(t *testing.T, grant *auth.OAuth2Grant) *oauth2.OIDCToke
}
func TestNewAccessTokenResponse_OIDCToken(t *testing.T) {
assert.NoError(t, unittest.PrepareTestDatabase())
require.NoError(t, unittest.PrepareTestDatabase())
grants, err := auth.GetOAuth2GrantsByUserID(db.DefaultContext, 3)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, grants, 1)
// Scopes: openid
@ -61,7 +62,7 @@ func TestNewAccessTokenResponse_OIDCToken(t *testing.T) {
user := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 5})
grants, err = auth.GetOAuth2GrantsByUserID(db.DefaultContext, user.ID)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, grants, 1)
// Scopes: openid profile email
@ -97,6 +98,6 @@ func TestNewAccessTokenResponse_OIDCToken(t *testing.T) {
func TestEncodeCodeChallenge(t *testing.T) {
// test vector from https://datatracker.ietf.org/doc/html/rfc7636#page-18
codeChallenge, err := encodeCodeChallenge("dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk")
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, "E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM", codeChallenge)
}

View file

@ -17,6 +17,7 @@ import (
"code.gitea.io/gitea/services/forms"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func int64SliceToCommaSeparated(a []int64) string {
@ -32,7 +33,7 @@ func int64SliceToCommaSeparated(a []int64) string {
func TestInitializeLabels(t *testing.T) {
unittest.PrepareTestEnv(t)
assert.NoError(t, repository.LoadRepoConfig())
require.NoError(t, repository.LoadRepoConfig())
ctx, _ := contexttest.MockContext(t, "user2/repo1/labels/initialize")
contexttest.LoadUser(t, ctx, 2)
contexttest.LoadRepo(t, ctx, 2)

View file

@ -17,6 +17,7 @@ import (
"code.gitea.io/gitea/services/pull"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestRenderConversation(t *testing.T) {
@ -42,14 +43,12 @@ func TestRenderConversation(t *testing.T) {
var preparedComment *issues_model.Comment
run("prepare", func(t *testing.T, ctx *context.Context, resp *httptest.ResponseRecorder) {
comment, err := pull.CreateCodeComment(ctx, pr.Issue.Poster, ctx.Repo.GitRepo, pr.Issue, 1, "content", "", false, 0, pr.HeadCommitID, nil)
if !assert.NoError(t, err) {
return
}
require.NoError(t, err)
comment.Invalidated = true
err = issues_model.UpdateCommentInvalidate(ctx, comment)
if !assert.NoError(t, err) {
return
}
require.NoError(t, err)
preparedComment = comment
})
if !assert.NotNil(t, preparedComment) {
@ -80,9 +79,9 @@ func TestRenderConversation(t *testing.T) {
reviews, err := issues_model.FindReviews(db.DefaultContext, issues_model.FindReviewOptions{
IssueID: 2,
})
assert.NoError(t, err)
require.NoError(t, err)
for _, r := range reviews {
assert.NoError(t, issues_model.DeleteReview(db.DefaultContext, r))
require.NoError(t, issues_model.DeleteReview(db.DefaultContext, r))
}
ctx.Data["ShowOutdatedComments"] = true
renderConversation(ctx, preparedComment, "diff")
@ -93,9 +92,9 @@ func TestRenderConversation(t *testing.T) {
reviews, err := issues_model.FindReviews(db.DefaultContext, issues_model.FindReviewOptions{
IssueID: 2,
})
assert.NoError(t, err)
require.NoError(t, err)
for _, r := range reviews {
assert.NoError(t, issues_model.DeleteReview(db.DefaultContext, r))
require.NoError(t, issues_model.DeleteReview(db.DefaultContext, r))
}
ctx.Data["ShowOutdatedComments"] = true
renderConversation(ctx, preparedComment, "timeline")

View file

@ -15,6 +15,7 @@ import (
"code.gitea.io/gitea/services/forms"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestNewReleasePost(t *testing.T) {
@ -79,12 +80,12 @@ func TestCalReleaseNumCommitsBehind(t *testing.T) {
IncludeDrafts: ctx.Repo.CanWrite(unit.TypeReleases),
RepoID: ctx.Repo.Repository.ID,
})
assert.NoError(t, err)
require.NoError(t, err)
countCache := make(map[string]int64)
for _, release := range releases {
err := calReleaseNumCommitsBehind(ctx.Repo, release, countCache)
assert.NoError(t, err)
require.NoError(t, err)
}
type computedFields struct {

View file

@ -22,6 +22,7 @@ import (
repo_service "code.gitea.io/gitea/services/repository"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func createSSHAuthorizedKeysTmpPath(t *testing.T) func() {
@ -126,7 +127,7 @@ func TestCollaborationPost(t *testing.T) {
assert.EqualValues(t, http.StatusSeeOther, ctx.Resp.Status())
exists, err := repo_model.IsCollaborator(ctx, re.ID, 4)
assert.NoError(t, err)
require.NoError(t, err)
assert.True(t, exists)
}
@ -186,7 +187,7 @@ func TestCollaborationPost_AddCollaboratorTwice(t *testing.T) {
assert.EqualValues(t, http.StatusSeeOther, ctx.Resp.Status())
exists, err := repo_model.IsCollaborator(ctx, re.ID, 4)
assert.NoError(t, err)
require.NoError(t, err)
assert.True(t, exists)
// Try adding the same collaborator again

View file

@ -19,6 +19,7 @@ import (
wiki_service "code.gitea.io/gitea/services/wiki"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
const (
@ -28,12 +29,12 @@ const (
func wikiEntry(t *testing.T, repo *repo_model.Repository, wikiName wiki_service.WebPath) *git.TreeEntry {
wikiRepo, err := gitrepo.OpenWikiRepository(git.DefaultContext, repo)
assert.NoError(t, err)
require.NoError(t, err)
defer wikiRepo.Close()
commit, err := wikiRepo.GetBranchCommit("master")
assert.NoError(t, err)
require.NoError(t, err)
entries, err := commit.ListEntries()
assert.NoError(t, err)
require.NoError(t, err)
for _, entry := range entries {
if entry.Name() == wiki_service.WebPathToGitPath(wikiName) {
return entry
@ -48,10 +49,10 @@ func wikiContent(t *testing.T, repo *repo_model.Repository, wikiName wiki_servic
return ""
}
reader, err := entry.Blob().DataAsync()
assert.NoError(t, err)
require.NoError(t, err)
defer reader.Close()
bytes, err := io.ReadAll(reader)
assert.NoError(t, err)
require.NoError(t, err)
return string(bytes)
}
@ -127,7 +128,7 @@ func TestNewWikiPost(t *testing.T) {
NewWikiPost(ctx)
assert.EqualValues(t, http.StatusSeeOther, ctx.Resp.Status())
assertWikiExists(t, ctx.Repo.Repository, wiki_service.UserTitleToWebPath("", title))
assert.Equal(t, wikiContent(t, ctx.Repo.Repository, wiki_service.UserTitleToWebPath("", title)), content)
assert.Equal(t, content, wikiContent(t, ctx.Repo.Repository, wiki_service.UserTitleToWebPath("", title)))
}
}
@ -179,7 +180,7 @@ func TestEditWikiPost(t *testing.T) {
EditWikiPost(ctx)
assert.EqualValues(t, http.StatusSeeOther, ctx.Resp.Status())
assertWikiExists(t, ctx.Repo.Repository, wiki_service.UserTitleToWebPath("", title))
assert.Equal(t, wikiContent(t, ctx.Repo.Repository, wiki_service.UserTitleToWebPath("", title)), content)
assert.Equal(t, content, wikiContent(t, ctx.Repo.Repository, wiki_service.UserTitleToWebPath("", title)))
if title != "Home" {
assertWikiNotExists(t, ctx.Repo.Repository, "Home")
}

View file

@ -17,12 +17,13 @@ import (
"code.gitea.io/gitea/services/contexttest"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestArchivedIssues(t *testing.T) {
// Arrange
setting.UI.IssuePagingNum = 1
assert.NoError(t, unittest.LoadFixtures())
require.NoError(t, unittest.LoadFixtures())
ctx, _ := contexttest.MockContext(t, "issues")
contexttest.LoadUser(t, ctx, 30)
@ -53,7 +54,7 @@ func TestArchivedIssues(t *testing.T) {
func TestIssues(t *testing.T) {
setting.UI.IssuePagingNum = 1
assert.NoError(t, unittest.LoadFixtures())
require.NoError(t, unittest.LoadFixtures())
ctx, _ := contexttest.MockContext(t, "issues")
contexttest.LoadUser(t, ctx, 2)
@ -67,7 +68,7 @@ func TestIssues(t *testing.T) {
func TestPulls(t *testing.T) {
setting.UI.IssuePagingNum = 20
assert.NoError(t, unittest.LoadFixtures())
require.NoError(t, unittest.LoadFixtures())
ctx, _ := contexttest.MockContext(t, "pulls")
contexttest.LoadUser(t, ctx, 2)
@ -80,7 +81,7 @@ func TestPulls(t *testing.T) {
func TestMilestones(t *testing.T) {
setting.UI.IssuePagingNum = 1
assert.NoError(t, unittest.LoadFixtures())
require.NoError(t, unittest.LoadFixtures())
ctx, _ := contexttest.MockContext(t, "milestones")
contexttest.LoadUser(t, ctx, 2)
@ -99,7 +100,7 @@ func TestMilestones(t *testing.T) {
func TestMilestonesForSpecificRepo(t *testing.T) {
setting.UI.IssuePagingNum = 1
assert.NoError(t, unittest.LoadFixtures())
require.NoError(t, unittest.LoadFixtures())
ctx, _ := contexttest.MockContext(t, "milestones")
contexttest.LoadUser(t, ctx, 2)
@ -123,17 +124,17 @@ func TestDashboardPagination(t *testing.T) {
setting.AppSubURL = "/SubPath"
out, err := ctx.RenderToHTML("base/paginate", map[string]any{"Link": setting.AppSubURL, "Page": page})
assert.NoError(t, err)
require.NoError(t, err)
assert.Contains(t, out, `<a class=" item navigation" href="/SubPath/?page=2">`)
setting.AppSubURL = ""
out, err = ctx.RenderToHTML("base/paginate", map[string]any{"Link": setting.AppSubURL, "Page": page})
assert.NoError(t, err)
require.NoError(t, err)
assert.Contains(t, out, `<a class=" item navigation" href="/?page=2">`)
}
func TestOrgLabels(t *testing.T) {
assert.NoError(t, unittest.LoadFixtures())
require.NoError(t, unittest.LoadFixtures())
ctx, _ := contexttest.MockContext(t, "org/org3/issues")
contexttest.LoadUser(t, ctx, 2)