2017-04-21 15:01:08 +08:00
|
|
|
// Copyright 2017 The Gitea Authors. All rights reserved.
|
|
|
|
// Use of this source code is governed by a MIT-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
2017-09-17 01:17:57 +08:00
|
|
|
package markup_test
|
2017-04-21 15:01:08 +08:00
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
2017-09-17 01:17:57 +08:00
|
|
|
. "code.gitea.io/gitea/modules/markup"
|
2021-11-17 20:34:35 +08:00
|
|
|
|
2017-09-21 13:20:14 +08:00
|
|
|
_ "code.gitea.io/gitea/modules/markup/markdown"
|
2017-09-17 01:17:57 +08:00
|
|
|
|
2017-04-21 15:01:08 +08:00
|
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestMisc_IsReadmeFile(t *testing.T) {
|
|
|
|
trueTestCases := []string{
|
|
|
|
"readme",
|
|
|
|
"README",
|
|
|
|
"readME.mdown",
|
|
|
|
"README.md",
|
2019-01-15 03:15:06 +08:00
|
|
|
"readme.i18n.md",
|
2017-04-21 15:01:08 +08:00
|
|
|
}
|
|
|
|
falseTestCases := []string{
|
|
|
|
"test.md",
|
|
|
|
"wow.MARKDOWN",
|
|
|
|
"LOL.mDoWn",
|
|
|
|
"test",
|
|
|
|
"abcdefg",
|
|
|
|
"abcdefghijklmnopqrstuvwxyz",
|
|
|
|
"test.md.test",
|
2017-05-09 22:20:22 +08:00
|
|
|
"readmf",
|
2017-04-21 15:01:08 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
for _, testCase := range trueTestCases {
|
|
|
|
assert.True(t, IsReadmeFile(testCase))
|
|
|
|
}
|
|
|
|
for _, testCase := range falseTestCases {
|
|
|
|
assert.False(t, IsReadmeFile(testCase))
|
|
|
|
}
|
2019-01-15 03:15:06 +08:00
|
|
|
|
2022-08-01 06:36:58 +08:00
|
|
|
type extensionTestcase struct {
|
|
|
|
name string
|
|
|
|
expected bool
|
|
|
|
idx int
|
2019-01-15 03:15:06 +08:00
|
|
|
}
|
|
|
|
|
2022-08-01 06:36:58 +08:00
|
|
|
exts := []string{".md", ".txt", ""}
|
|
|
|
testCasesExtensions := []extensionTestcase{
|
|
|
|
{
|
|
|
|
name: "readme",
|
|
|
|
expected: true,
|
|
|
|
idx: 2,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "readme.md",
|
|
|
|
expected: true,
|
|
|
|
idx: 0,
|
|
|
|
},
|
2022-08-01 20:15:40 +08:00
|
|
|
{
|
|
|
|
name: "README.md",
|
|
|
|
expected: true,
|
|
|
|
idx: 0,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "ReAdMe.Md",
|
|
|
|
expected: true,
|
|
|
|
idx: 0,
|
|
|
|
},
|
2022-08-01 06:36:58 +08:00
|
|
|
{
|
|
|
|
name: "readme.txt",
|
|
|
|
expected: true,
|
|
|
|
idx: 1,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "readme.doc",
|
|
|
|
expected: true,
|
|
|
|
idx: 3,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "readmee.md",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "readme..",
|
|
|
|
expected: true,
|
|
|
|
idx: 3,
|
|
|
|
},
|
2019-01-15 03:15:06 +08:00
|
|
|
}
|
2022-08-01 06:36:58 +08:00
|
|
|
|
|
|
|
for _, testCase := range testCasesExtensions {
|
|
|
|
idx, ok := IsReadmeFileExtension(testCase.name, exts...)
|
|
|
|
assert.Equal(t, testCase.expected, ok)
|
|
|
|
assert.Equal(t, testCase.idx, idx)
|
2019-01-15 03:15:06 +08:00
|
|
|
}
|
2017-04-21 15:01:08 +08:00
|
|
|
}
|