func NewFakeCSQLInstance()

in internal/mock/cloudsql.go [226:260]


func NewFakeCSQLInstance(project, region, name string, opts ...FakeCSQLInstanceOption) FakeCSQLInstance {

	f := FakeCSQLInstance{
		project:     project,
		region:      region,
		name:        name,
		ipAddrs:     map[string]string{"PUBLIC": "0.0.0.0"},
		DNSName:     "",
		dbVersion:   "POSTGRES_12", // default of no particular importance
		backendType: "SECOND_GEN",
	}
	for _, o := range opts {
		o(&f)
	}
	sanNames := make([]string, 0, 5)
	if f.DNSName != "" && f.DNSName != f.MissingSAN {
		sanNames = append(sanNames, f.DNSName)
	}
	for _, dnm := range f.DNSNames {
		if dnm.Name != f.MissingSAN {
			sanNames = append(sanNames, dnm.Name)
		}
	}
	if len(sanNames) > 0 {
		f.useStandardTLSValidation = true
	}

	certs := NewTLSCertificates(project, name, sanNames, f.certExpiry)

	f.Key = certs.serverKey
	f.Cert = certs.serverCert
	f.certs = certs

	return f
}