Files
nginx-ui/internal/cert/dns/config_env_test.go
T

66 lines
1.3 KiB
Go

package dns
import (
"github.com/0xJacky/Nginx-UI/internal/cert/config"
"github.com/BurntSushi/toml"
"log"
"sort"
"strings"
"testing"
)
func CheckIfErr(err error) {
if err != nil {
log.Fatalln(err)
}
}
func TestGetProvidersListSortedByName(t *testing.T) {
providers := GetProvidersList()
if !sort.SliceIsSorted(providers, func(i, j int) bool {
leftName := strings.ToLower(providers[i].Name)
rightName := strings.ToLower(providers[j].Name)
if leftName == rightName {
return strings.ToLower(providers[i].Code) < strings.ToLower(providers[j].Code)
}
return leftName < rightName
}) {
t.Fatal("providers are not sorted by name")
}
}
func TestConfigEnv(t *testing.T) {
filenames, err := config.ListConfigs()
CheckIfErr(err)
for _, filename := range filenames {
if !strings.HasSuffix(filename, ".toml") {
continue
}
data, err := config.GetConfig(filename)
CheckIfErr(err)
c := Config{}
err = toml.Unmarshal(data, &c)
CheckIfErr(err)
log.Println(c.Name)
if c.Configuration != nil {
for k, v := range c.Configuration.Credentials {
log.Println(k, v)
}
for k, v := range c.Configuration.Additional {
log.Println(k, v)
}
}
if c.Links != nil {
log.Println(c.Links.API)
log.Println(c.Links.GoClient)
}
}
}