初始提交: Gitea 项目代码
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
// Copyright 2017 The Gitea Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package utils
|
||||
|
||||
import (
|
||||
"html"
|
||||
"html/template"
|
||||
)
|
||||
|
||||
// EscapeFlashErrorString will escape the flash error string
|
||||
// Maybe do more sanitization in the future, e.g.: hide sensitive information, etc.
|
||||
func EscapeFlashErrorString(x string) template.HTML {
|
||||
return template.HTML(html.EscapeString(x))
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
// Copyright 2017 The Gitea Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package utils
|
||||
|
||||
import (
|
||||
"html/template"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestEscapeFlashErrorString(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
arg string
|
||||
want template.HTML
|
||||
}{
|
||||
{
|
||||
name: "no error",
|
||||
arg: "",
|
||||
want: "",
|
||||
},
|
||||
{
|
||||
name: "normal error",
|
||||
arg: "can not open file: \"abc.exe\"",
|
||||
want: "can not open file: "abc.exe"",
|
||||
},
|
||||
{
|
||||
name: "line break error",
|
||||
arg: "some error:\n\nawesome!",
|
||||
want: "some error:\n\nawesome!",
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
got := EscapeFlashErrorString(tt.arg)
|
||||
assert.Equal(t, tt.want, got)
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user