46 lines
1.1 KiB
Go
46 lines
1.1 KiB
Go
|
|
package config
|
||
|
|
|
||
|
|
import (
|
||
|
|
"testing"
|
||
|
|
|
||
|
|
"gopkg.in/yaml.v3"
|
||
|
|
)
|
||
|
|
|
||
|
|
func TestVectorDBConfigUnmarshalNestedProviders(t *testing.T) {
|
||
|
|
raw := []byte(`
|
||
|
|
vectorDB:
|
||
|
|
type: lancedb
|
||
|
|
qdrant:
|
||
|
|
host: 127.0.0.1
|
||
|
|
grpcPort: 6334
|
||
|
|
apiKey: secret
|
||
|
|
useTls: true
|
||
|
|
lancedb:
|
||
|
|
path: data/lancedb
|
||
|
|
`)
|
||
|
|
|
||
|
|
var cfg Config
|
||
|
|
if err := yaml.Unmarshal(raw, &cfg); err != nil {
|
||
|
|
t.Fatalf("yaml.Unmarshal() error = %v", err)
|
||
|
|
}
|
||
|
|
|
||
|
|
if cfg.VectorDB.Type != "lancedb" {
|
||
|
|
t.Fatalf("VectorDB.Type = %q, want %q", cfg.VectorDB.Type, "lancedb")
|
||
|
|
}
|
||
|
|
if cfg.VectorDB.Qdrant.Host != "127.0.0.1" {
|
||
|
|
t.Fatalf("VectorDB.Qdrant.Host = %q, want %q", cfg.VectorDB.Qdrant.Host, "127.0.0.1")
|
||
|
|
}
|
||
|
|
if cfg.VectorDB.Qdrant.GrpcPort != 6334 {
|
||
|
|
t.Fatalf("VectorDB.Qdrant.GrpcPort = %d, want %d", cfg.VectorDB.Qdrant.GrpcPort, 6334)
|
||
|
|
}
|
||
|
|
if cfg.VectorDB.Qdrant.APIKey != "secret" {
|
||
|
|
t.Fatalf("VectorDB.Qdrant.APIKey = %q, want %q", cfg.VectorDB.Qdrant.APIKey, "secret")
|
||
|
|
}
|
||
|
|
if !cfg.VectorDB.Qdrant.UseTLS {
|
||
|
|
t.Fatal("VectorDB.Qdrant.UseTLS = false, want true")
|
||
|
|
}
|
||
|
|
if cfg.VectorDB.LanceDB.Path != "data/lancedb" {
|
||
|
|
t.Fatalf("VectorDB.LanceDB.Path = %q, want %q", cfg.VectorDB.LanceDB.Path, "data/lancedb")
|
||
|
|
}
|
||
|
|
}
|