KevinStephenson
Adding in weaviate code
b110593
raw
history blame
1.54 kB
// _ _
// __ _____ __ ___ ___ __ _| |_ ___
// \ \ /\ / / _ \/ _` \ \ / / |/ _` | __/ _ \
// \ V V / __/ (_| |\ V /| | (_| | || __/
// \_/\_/ \___|\__,_| \_/ |_|\__,_|\__\___|
//
// Copyright © 2016 - 2024 Weaviate B.V. All rights reserved.
//
// CONTACT: [email protected]
//
package nearthermal
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/tailor-inc/graphql"
)
func TestNearThermalGraphQLArgument(t *testing.T) {
t.Run("should generate nearThermal argument properly", func(t *testing.T) {
// given
prefix := "Prefix"
classname := "Class"
// when
nearThermal := nearThermalArgument(prefix, classname)
// then
// the built graphQL field needs to support this structure:
// nearThermal: {
// thermal: "base64;encoded,thermal_image",
// distance: 0.9
// }
assert.NotNil(t, nearThermal)
assert.Equal(t, "Multi2VecBindPrefixClassNearThermalInpObj", nearThermal.Type.Name())
answerFields, ok := nearThermal.Type.(*graphql.InputObject)
assert.True(t, ok)
assert.NotNil(t, answerFields)
assert.Equal(t, 3, len(answerFields.Fields()))
fields := answerFields.Fields()
thermal := fields["thermal"]
thermalNonNull, thermalNonNullOK := thermal.Type.(*graphql.NonNull)
assert.True(t, thermalNonNullOK)
assert.Equal(t, "String", thermalNonNull.OfType.Name())
assert.NotNil(t, thermal)
assert.NotNil(t, fields["certainty"])
assert.NotNil(t, fields["distance"])
})
}