KevinStephenson
Adding in weaviate code
b110593
raw
history blame
2.61 kB
// _ _
// __ _____ __ ___ ___ __ _| |_ ___
// \ \ /\ / / _ \/ _` \ \ / / |/ _` | __/ _ \
// \ V V / __/ (_| |\ V /| | (_| | || __/
// \_/\_/ \___|\__,_| \_/ |_|\__,_|\__\___|
//
// Copyright © 2016 - 2024 Weaviate B.V. All rights reserved.
//
// CONTACT: [email protected]
//
package test
import (
"os"
"testing"
"github.com/stretchr/testify/assert"
"github.com/weaviate/weaviate/entities/models"
"github.com/weaviate/weaviate/test/helper"
graphqlhelper "github.com/weaviate/weaviate/test/helper/graphql"
"github.com/weaviate/weaviate/test/helper/sample-schema/books"
)
func Test_SUMTransformers(t *testing.T) {
helper.SetupClient(os.Getenv(weaviateEndpoint))
tests := []struct {
name string
class *models.Class
}{
{
name: "with module config for sum-transformers module",
class: books.ClassContextionaryVectorizerWithSumTransformers(),
},
{
name: "without module config",
class: books.ClassContextionaryVectorizer(),
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
booksClass := tt.class
helper.CreateClass(t, booksClass)
defer helper.DeleteClass(t, booksClass.Class)
t.Run("add data to Books schema", func(t *testing.T) {
for _, book := range books.Objects() {
helper.CreateObject(t, book)
helper.AssertGetObjectEventually(t, book.Class, book.ID)
}
})
t.Run("query Books data with nearText", func(t *testing.T) {
result := graphqlhelper.AssertGraphQL(t, helper.RootAuth, `
{
Get {
Books(where: {
operator: Equal
path:["title"]
valueText: "Dune"
}){
title
_additional {
summary (properties:["description"]) {
property
result
}
}
}
}
}
`)
books := result.Get("Get", "Books").AsSlice()
expected := []interface{}{
map[string]interface{}{
"title": "Dune",
"_additional": map[string]interface{}{
"summary": []interface{}{
map[string]interface{}{
"property": "description",
"result": "Dune is a 1965 epic science fiction novel by American author Frank Herbert." +
"It is the first novel in the Dune series by Frank Herbert, and the first in the \"Dune\" series of books." +
"It was published in the United States by Simon & Schuster in 1965.",
},
},
},
},
}
assert.ElementsMatch(t, expected, books)
})
})
}
}