mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-08-06 10:25:22 +02:00
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:
parent
94933470cd
commit
4de909747b
504 changed files with 5028 additions and 4680 deletions
|
@ -9,6 +9,7 @@ import (
|
|||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func tokens(s string) (a []any) {
|
||||
|
@ -20,15 +21,15 @@ func tokens(s string) (a []any) {
|
|||
|
||||
func TestEval(t *testing.T) {
|
||||
n, err := Expr(0, "/", 0.0)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
assert.True(t, math.IsNaN(n.Value.(float64)))
|
||||
|
||||
_, err = Expr(nil)
|
||||
assert.ErrorContains(t, err, "unsupported token type")
|
||||
require.ErrorContains(t, err, "unsupported token type")
|
||||
_, err = Expr([]string{})
|
||||
assert.ErrorContains(t, err, "unsupported token type")
|
||||
require.ErrorContains(t, err, "unsupported token type")
|
||||
_, err = Expr(struct{}{})
|
||||
assert.ErrorContains(t, err, "unsupported token type")
|
||||
require.ErrorContains(t, err, "unsupported token type")
|
||||
|
||||
cases := []struct {
|
||||
expr string
|
||||
|
@ -69,9 +70,8 @@ func TestEval(t *testing.T) {
|
|||
|
||||
for _, c := range cases {
|
||||
n, err := Expr(tokens(c.expr)...)
|
||||
if assert.NoError(t, err, "expr: %s", c.expr) {
|
||||
assert.Equal(t, c.want, n.Value)
|
||||
}
|
||||
require.NoError(t, err, "expr: %s", c.expr)
|
||||
assert.Equal(t, c.want, n.Value)
|
||||
}
|
||||
|
||||
bads := []struct {
|
||||
|
@ -89,6 +89,6 @@ func TestEval(t *testing.T) {
|
|||
}
|
||||
for _, c := range bads {
|
||||
_, err = Expr(tokens(c.expr)...)
|
||||
assert.ErrorContains(t, err, c.errMsg, "expr: %s", c.expr)
|
||||
require.ErrorContains(t, err, c.errMsg, "expr: %s", c.expr)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,6 +13,7 @@ import (
|
|||
"code.gitea.io/gitea/modules/assetfs"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestExtractErrorLine(t *testing.T) {
|
||||
|
@ -60,10 +61,10 @@ func TestHandleError(t *testing.T) {
|
|||
|
||||
test := func(s string, h func(error) string, expect string) {
|
||||
err := os.WriteFile(dir+"/test.tmpl", []byte(s), 0o644)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
tmpl := template.New("test")
|
||||
_, err = tmpl.Parse(s)
|
||||
assert.Error(t, err)
|
||||
require.Error(t, err)
|
||||
msg := h(err)
|
||||
assert.EqualValues(t, strings.TrimSpace(expect), strings.TrimSpace(msg))
|
||||
}
|
||||
|
@ -93,7 +94,7 @@ template error: tmp:test:1 : unexpected "3" in operand
|
|||
|
||||
// no idea about how to trigger such strange error, so mock an error to test it
|
||||
err := os.WriteFile(dir+"/test.tmpl", []byte("god knows XXX"), 0o644)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
expectedMsg := `
|
||||
template error: tmp:test:1 : expected end; found XXX
|
||||
----------------------------------------------------------------------
|
||||
|
|
|
@ -12,6 +12,7 @@ import (
|
|||
"time"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestScopedTemplateSetFuncMap(t *testing.T) {
|
||||
|
@ -22,7 +23,7 @@ func TestScopedTemplateSetFuncMap(t *testing.T) {
|
|||
}})
|
||||
|
||||
_, err := all.New("base").Parse(`{{CtxFunc "base"}}`)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
_, err = all.New("test").Parse(strings.TrimSpace(`
|
||||
{{template "base"}}
|
||||
|
@ -30,10 +31,10 @@ func TestScopedTemplateSetFuncMap(t *testing.T) {
|
|||
{{template "base"}}
|
||||
{{CtxFunc "test"}}
|
||||
`))
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
ts, err := newScopedTemplateSet(all, "test")
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
// try to use different CtxFunc to render concurrently
|
||||
|
||||
|
@ -57,12 +58,12 @@ func TestScopedTemplateSetFuncMap(t *testing.T) {
|
|||
wg.Add(2)
|
||||
go func() {
|
||||
err := ts.newExecutor(funcMap1).Execute(&out1, nil)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
wg.Done()
|
||||
}()
|
||||
go func() {
|
||||
err := ts.newExecutor(funcMap2).Execute(&out2, nil)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
wg.Done()
|
||||
}()
|
||||
wg.Wait()
|
||||
|
@ -73,17 +74,17 @@ func TestScopedTemplateSetFuncMap(t *testing.T) {
|
|||
func TestScopedTemplateSetEscape(t *testing.T) {
|
||||
all := template.New("")
|
||||
_, err := all.New("base").Parse(`<a href="?q={{.param}}">{{.text}}</a>`)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
_, err = all.New("test").Parse(`{{template "base" .}}<form action="?q={{.param}}">{{.text}}</form>`)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
ts, err := newScopedTemplateSet(all, "test")
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
out := bytes.Buffer{}
|
||||
err = ts.newExecutor(nil).Execute(&out, map[string]string{"param": "/", "text": "<"})
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
assert.Equal(t, `<a href="?q=%2f"><</a><form action="?q=%2f"><</form>`, out.String())
|
||||
}
|
||||
|
@ -91,8 +92,8 @@ func TestScopedTemplateSetEscape(t *testing.T) {
|
|||
func TestScopedTemplateSetUnsafe(t *testing.T) {
|
||||
all := template.New("")
|
||||
_, err := all.New("test").Parse(`<a href="{{if true}}?{{end}}a={{.param}}"></a>`)
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
|
||||
_, err = newScopedTemplateSet(all, "test")
|
||||
assert.ErrorContains(t, err, "appears in an ambiguous context within a URL")
|
||||
require.ErrorContains(t, err, "appears in an ambiguous context within a URL")
|
||||
}
|
||||
|
|
|
@ -10,6 +10,7 @@ import (
|
|||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestDict(t *testing.T) {
|
||||
|
@ -27,9 +28,8 @@ func TestDict(t *testing.T) {
|
|||
|
||||
for _, c := range cases {
|
||||
got, err := dict(c.args...)
|
||||
if assert.NoError(t, err) {
|
||||
assert.EqualValues(t, c.want, got)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, c.want, got)
|
||||
}
|
||||
|
||||
bads := []struct {
|
||||
|
@ -41,7 +41,7 @@ func TestDict(t *testing.T) {
|
|||
}
|
||||
for _, c := range bads {
|
||||
_, err := dict(c.args...)
|
||||
assert.Error(t, err)
|
||||
require.Error(t, err)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -51,7 +51,7 @@ func TestUtils(t *testing.T) {
|
|||
tmpl.Funcs(template.FuncMap{"SliceUtils": NewSliceUtils, "StringUtils": NewStringUtils})
|
||||
template.Must(tmpl.Parse(code))
|
||||
w := &strings.Builder{}
|
||||
assert.NoError(t, tmpl.Execute(w, data))
|
||||
require.NoError(t, tmpl.Execute(w, data))
|
||||
return w.String()
|
||||
}
|
||||
|
||||
|
@ -75,5 +75,5 @@ func TestUtils(t *testing.T) {
|
|||
template.Must(tmpl.Parse("{{SliceUtils.Contains .Slice .Value}}"))
|
||||
// error is like this: `template: test:1:12: executing "test" at <SliceUtils.Contains>: error calling Contains: ...`
|
||||
err := tmpl.Execute(io.Discard, map[string]any{"Slice": struct{}{}})
|
||||
assert.ErrorContains(t, err, "invalid type, expected slice or array")
|
||||
require.ErrorContains(t, err, "invalid type, expected slice or array")
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import (
|
|||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestExpandVars(t *testing.T) {
|
||||
|
@ -62,9 +63,9 @@ func TestExpandVars(t *testing.T) {
|
|||
res, err := Expand(kase.tmpl, kase.data)
|
||||
assert.EqualValues(t, kase.out, res)
|
||||
if kase.error {
|
||||
assert.Error(t, err)
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
assert.NoError(t, err)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue