|
7 | 7 | "testing"
|
8 | 8 |
|
9 | 9 | "github.com/stretchr/testify/assert"
|
| 10 | + "github.com/stretchr/testify/require" |
10 | 11 | )
|
11 | 12 |
|
12 | 13 | var giteaTemplate = []byte(`
|
@@ -65,3 +66,26 @@ func TestFileNameSanitize(t *testing.T) {
|
65 | 66 | assert.Equal(t, "_", fileNameSanitize("\u0000"))
|
66 | 67 | assert.Equal(t, "目标", fileNameSanitize("目标"))
|
67 | 68 | }
|
| 69 | + |
| 70 | +func TestTransformers(t *testing.T) { |
| 71 | + cases := []struct { |
| 72 | + name string |
| 73 | + expected string |
| 74 | + }{ |
| 75 | + {"SNAKE", "abc_def_xyz"}, |
| 76 | + {"KEBAB", "abc-def-xyz"}, |
| 77 | + {"CAMEL", "abcDefXyz"}, |
| 78 | + {"PASCAL", "AbcDefXyz"}, |
| 79 | + {"LOWER", "abc_def-xyz"}, |
| 80 | + {"UPPER", "ABC_DEF-XYZ"}, |
| 81 | + {"TITLE", "Abc_def-Xyz"}, |
| 82 | + } |
| 83 | + |
| 84 | + input := "Abc_Def-XYZ" |
| 85 | + assert.Len(t, defaultTransformers, len(cases)) |
| 86 | + for i, c := range cases { |
| 87 | + tf := defaultTransformers[i] |
| 88 | + require.Equal(t, c.name, tf.Name) |
| 89 | + assert.Equal(t, c.expected, tf.Transform(input), "case %s", c.name) |
| 90 | + } |
| 91 | +} |
0 commit comments