package config

import (
	"github.com/google/go-cmp/cmp"
	. "github.com/onsi/gomega"
	"github.com/tidbcloud/config-service/sdk/api"
	"os"
	"testing"
)

var PreTiDBConfig = []string{
	"security.cluster-ssl-ca",
	"security.cluster-ssl-cert",
	"security.cluster-ssl-key",
	"security.cluster-verify-cn",
	"security.ssl-ca",
	"security.ssl-cert",
	"security.ssl-key",
	"log.file.max-backups"}

func TestGetPreConfigKeys(t *testing.T) {
	g := NewGomegaWithT(t)
	pwd, err := os.Getwd()
	g.Expect(err, nil)
	configPath := pwd + "/../../example/preconfig.yaml"
	g.Expect(ParseConfig(configPath), nil)
	if diff := cmp.Diff(PreTiDBConfig, GetPreConfigKeys(api.ComponentTiDB)); diff != "" {
		t.Errorf("GetPreConfigKeys() mismatch (-want +got):\n%s", diff)
	}
}
