Spaces:
Running
Running
// _ _ | |
// __ _____ __ ___ ___ __ _| |_ ___ | |
// \ \ /\ / / _ \/ _` \ \ / / |/ _` | __/ _ \ | |
// \ V V / __/ (_| |\ V /| | (_| | || __/ | |
// \_/\_/ \___|\__,_| \_/ |_|\__,_|\__\___| | |
// | |
// Copyright © 2016 - 2024 Weaviate B.V. All rights reserved. | |
// | |
// CONTACT: [email protected] | |
// | |
package vectorizer | |
import ( | |
"testing" | |
"github.com/weaviate/weaviate/entities/moduletools" | |
) | |
func Test_classSettings_Validate(t *testing.T) { | |
type fields struct { | |
cfg moduletools.ClassConfig | |
} | |
tests := []struct { | |
name string | |
fields fields | |
wantErr bool | |
}{ | |
{ | |
name: "should not pass with empty config", | |
wantErr: true, | |
}, | |
{ | |
name: "should not pass with nil config", | |
fields: fields{ | |
cfg: nil, | |
}, | |
wantErr: true, | |
}, | |
{ | |
name: "should not pass with nil imageFields", | |
fields: fields{ | |
cfg: newConfigBuilder().addSetting("imageFields", nil).build(), | |
}, | |
wantErr: true, | |
}, | |
{ | |
name: "should not pass with fault imageFields value", | |
fields: fields{ | |
cfg: newConfigBuilder().addSetting("imageFields", []string{}).build(), | |
}, | |
wantErr: true, | |
}, | |
{ | |
name: "should not pass with empty imageFields", | |
fields: fields{ | |
cfg: newConfigBuilder().addSetting("imageFields", []interface{}{}).build(), | |
}, | |
wantErr: true, | |
}, | |
{ | |
name: "should not pass with empty string in imageFields", | |
fields: fields{ | |
cfg: newConfigBuilder().addSetting("imageFields", []interface{}{""}).build(), | |
}, | |
wantErr: true, | |
}, | |
{ | |
name: "should not pass with int value in imageFields", | |
fields: fields{ | |
cfg: newConfigBuilder().addSetting("imageFields", []interface{}{1.0}).build(), | |
}, | |
wantErr: true, | |
}, | |
{ | |
name: "should pass with proper value in imageFields", | |
fields: fields{ | |
cfg: newConfigBuilder().addSetting("imageFields", []interface{}{"field"}).build(), | |
}, | |
}, | |
} | |
for _, tt := range tests { | |
t.Run(tt.name, func(t *testing.T) { | |
ic := &classSettings{ | |
cfg: tt.fields.cfg, | |
} | |
if err := ic.Validate(); (err != nil) != tt.wantErr { | |
t.Errorf("classSettings.Validate() error = %v, wantErr %v", err, tt.wantErr) | |
} | |
}) | |
} | |
} | |