...
1 package config
2
3 import (
4 "testing"
5
6 "github.com/stretchr/testify/assert"
7 "github.com/stretchr/testify/require"
8
9 "github.com/99designs/gqlgen/codegen/templates"
10 )
11
12 func TestGoInitialismsConfig(t *testing.T) {
13 t.Run("load go initialisms config", func(t *testing.T) {
14 config, err := LoadConfig("testdata/cfg/goInitialisms.yml")
15 require.NoError(t, err)
16 require.True(t, config.GoInitialisms.ReplaceDefaults)
17 require.Len(t, config.GoInitialisms.Initialisms, 2)
18 })
19 t.Run("empty initialism config doesn't change anything", func(t *testing.T) {
20 tt := GoInitialismsConfig{}
21 result := tt.determineGoInitialisms()
22 assert.Equal(t, len(templates.CommonInitialisms), len(result))
23 })
24 t.Run("initialism config appends if desired", func(t *testing.T) {
25 tt := GoInitialismsConfig{ReplaceDefaults: false, Initialisms: []string{"ASDF"}}
26 result := tt.determineGoInitialisms()
27 assert.Equal(t, len(templates.CommonInitialisms)+1, len(result))
28 assert.True(t, result["ASDF"])
29 })
30 t.Run("initialism config replaces if desired", func(t *testing.T) {
31 tt := GoInitialismsConfig{ReplaceDefaults: true, Initialisms: []string{"ASDF"}}
32 result := tt.determineGoInitialisms()
33 assert.Equal(t, 1, len(result))
34 assert.True(t, result["ASDF"])
35 })
36 t.Run("initialism config uppercases the initialsms", func(t *testing.T) {
37 tt := GoInitialismsConfig{Initialisms: []string{"asdf"}}
38 result := tt.determineGoInitialisms()
39 assert.True(t, result["ASDF"])
40 })
41 }
42
View as plain text